Рассмотрим несколько примеров, чтобы понять, чем отличается .iloc от .loc.
Выберем две строки и два столбца:
import pandas as pd
import numpy as np
df = pd.read_csv('D:\#python#\example\SampleData_Pandas.csv', sep=';')
print(df.iloc[ [2,3], [0,3] ])
Результат:
Дата Менеджер
2 01.01.2016 Сидоров
3 01.01.2016 Сидоров
Осуществим выборку строк и столбцов с помощью среза:
import pandas as pd
import numpy as np
df = pd.read_csv('D:\#python#\example\SampleData_Pandas.csv', sep=';')
print(df.iloc[2:9, 0:3])
Результат:
Дата Подразделение Контрагент
2 01.01.2016 Отдел продвижения Абакус ООО
3 01.01.2016 Отдел продвижения Абакус ООО
4 01.01.2016 Отдел продаж Билли Боб ООО
5 01.01.2016 Отдел продаж Билли Боб ООО
6 01.01.2016 Отдел продаж Билли Боб ООО
7 01.01.2016 Отдел продаж Билли Боб ООО
8 01.01.2016 Отдел продвижения Билли Боб ООО
Выберем 1 значение из столбца и указанной колонки:
import pandas as pd
import numpy as np
df = pd.read_csv('D:\#python#\example\SampleData_Pandas.csv', sep=';')
print(df.loc[3, 4])
Результат:
Палатки
Резюме по .loc и .iloc
Доступ к строкам и колонкам по индексу возможен несколькими способами:
.loc — используется для доступа по строковой метке — т.е. фактически по значению индекса и по названию столбца
.iloc — используется для доступа по числовому значению (начиная от 0) — т.е. по номеру строки и номеру столбца
Как выбрать строки из Pandas DataFrame по условию
Собираем тестовый набор данных для иллюстрации работы выборки по условию
Color Shape Price
0 Green Rectangle 10
1 Green Rectangle 15
2 Green Square 5
3 Blue Rectangle 5
4 Blue Square 10
5 Red Square 15
6 Red Square 15
7 Red Rectangle 5
Синтаксис выборки строк из Pandas DataFrame по условию
Вы можете использовать следующую логику для выбора строк в Pandas DataFrame по условию:
df.loc[df.column name condition]
Например, если вы хотите получить строки с зеленым цветом , вам нужно применить: