Извлечение индексов столбцов, где dtype это «объект» в Pandas

1

Из всех столбцов в Pandas Dataframe, как извлечь индексы всех столбцов определенного dtype?

Теги:
pandas
numpy

1 ответ

3
Лучший ответ

Используйте select_dtypes и если нужные позиции get_indexer:

df = pd.DataFrame({'A':list('abcdef'),
                   'B':[4,5,4,5,5,4],
                   'C':[7,8,9,4,2,3],
                   'D':[1,3,5,7,1,0],
                   'E':[5,3,6,9,2,4],
                   'F':list('aaabbb')})

print (df)
   A  B  C  D  E  F
0  a  4  7  1  5  a
1  b  5  8  3  3  a
2  c  4  9  5  6  a
3  d  5  4  7  9  b
4  e  5  2  1  2  b
5  f  4  3  0  4  b

a = df.select_dtypes('object').columns
print (a)
Index(['A', 'F'], dtype='object')

idx = df.columns.get_indexer(df.select_dtypes('object').columns)
print (idx)
[0 5]
  • 2
    Работает как шарм. Спасибо!
  • 0
    @RahulDev - Добро пожаловать!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню