假设您有一个pandas数据框输入和一个列名列表。为这些名称所代表的列获取索引列表(列号)的好方法是什么?
我认为这可能与以下内容类似:
def get_col_indices(df, names):
return [df.columns.index(name) for name in names]
答案 0 :(得分:2)
def get_col_indices(df, names):
return df.columns.get_indexer(names)
答案 1 :(得分:2)
如果不需要它们的顺序相同,可以将pd.Index.isin
与np.flatnonzero
一起使用
import numpy as np
np.flatnonzero(df.columns.isin(names))