Python Pandas: выбор столбцов по именам столбцов

Я могу выбрать столбцы фрейма данных Pandas с их позициями:

df = pd.DataFrame({"a": [1, 2, 3], "b": [4, 5, 6], "c": [7, 8, 9],
                   "d": [10, 11, 12], "e": [13, 14, 15]})
df.iloc[:, 1:4]

С помощью этого я могу выбрать столбцы b до d.

есть ли простой способ сделать это с помощью имен столбцов? Что-то вроде:

df.SOME_FUNCTION_OR_A_SPECIFIC_SYNTAX("b", "d")

2 ответов


использовать loc только с : для диапазона столбцов:

df1 = df.loc[:, 'b':'d']
print (df1)

   b  c   d
0  4  7  10
1  5  8  11
2  6  9  12

В этом случае вы также можете использовать regex:

df = df.filter(regex='[b-d]')

или более общие, указав имя столбца:

df = df[['b','c','d']]