Атрибут iloc
Атрибут iloc применяется к объекту DataFrame
и позволяет извлекать подмножество данных, используя
целочисленные индексы строк и столбцов. В отличие от
loc,
который работает с метками, iloc работает исключительно
с позициями, начиная с нуля. Это делает его удобным
инструментом для выборки по порядковому номеру, например,
первых или последних строк, определенных колонок или
диапазонов значений.
Атрибут принимает срезы (slice), списки целых чисел,
массивы булевых значений или скалярные значения.
Синтаксис вызова: df.iloc[строка_выборка, столбец_выборка].
Если передать один аргумент, он будет интерпретирован как выборка по строкам.
Синтаксис
df.iloc[row_selection, column_selection]
Пример
Давайте получим первый элемент таблицы, используя скалярные индексы для строки и столбца:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 5],
'b': [10, 20, 30, 40, 50]
})
res = df.iloc[0, 0]
print(res)
Результат выполнения кода:
1
Пример
Давайте получим целую строку таблицы по её позиции. Для этого достаточно указать только индекс строки:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 5],
'b': [10, 20, 30, 40, 50]
})
print(df.iloc[2])
Результат выполнения кода:
a 3
b 30
Name: 2, dtype: int64
Пример
Давайте выберем первые три строки и первый столбец с помощью срезов:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 5],
'b': [10, 20, 30, 40, 50]
})
print(df.iloc[0:3, 0:1])
Результат выполнения кода:
a
0 1
1 2
2 3
Пример
Давайте выберем строки с индексами 1, 3 и столбцы с индексами 0 и 1, используя списки целых чисел:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 5],
'b': [10, 20, 30, 40, 50]
})
print(df.iloc[[1, 3], [0, 1]])
Результат выполнения кода:
a b
1 2 20
3 4 40