Pandas: как получить индекс столбца из имени столбца
Вы можете использовать следующие методы, чтобы получить значение индекса столбца из имени столбца в pandas:
Способ 1. Получите индекс столбца для имени столбца.
df. columns . get_loc (' this_column ')
Способ 2: получить индекс столбца для нескольких имен столбцов
cols = [' this_column ', ' that_column '] [df. columns . get_loc (c) for c in cols if c in df]
В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' store ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' sales ': [18, 10, 14, 13, 19, 24, 25, 29], ' returns ': [1, 2, 2, 3, 2, 3, 5, 4], ' recalls ': [0, 0, 2, 1, 1, 2, 0, 1]}) #view DataFrame print (df) store sales returns recalls 0 to 18 1 0 1 to 10 2 0 2 A 14 2 2 3 A 13 3 1 4 B 19 2 1 5 B 24 3 2 6 B 25 5 0 7 B 29 4 1
Пример 1. Получение индекса столбца для имени столбца
Следующий код показывает, как получить значение индекса столбца для столбца с именем return:
#get column index for column with the name 'returns' df. columns . get_loc (' returns ') 2
Столбец с именем return имеет значение индекса столбца 2 .
Примечание . Значения индекса столбца в Python начинаются с 0. Итак, поскольку «возврат» — это третий столбец DataFrame, его значение индекса равно 2.
Пример 2. Получение индекса столбца для нескольких имен столбцов
Следующий код показывает, как получить значение индекса столбца для нескольких столбцов в DataFrame:
#define list of columns to get index for cols = [' store ', ' returns ', ' recalls '] #get column index for each column in list [df. columns . get_loc (c) for c in cols if c in df] [0, 2, 3]
По результату мы видим:
- Столбец с именем «store» имеет значение индекса столбца 0 .
- Столбец с именем return имеет значение индекса столбца 2 .
- Столбец с именем «напоминания» имеет значение индекса столбца 3 .
Примечание . Полную документацию по функции pandas get_loc() можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:
Как получить значение ячейки из Pandas DataFrame
Как переименовать индекс в Pandas DataFrame
Как сортировать столбцы по имени в Pandas