我想获得一系列pandas dataframe列的数字索引。
有一栏很简单:
nonzero(df.columns.values == 'conditionA')
但有多个元素?我有一些有用的东西但又冗长又丑陋:
df = pd.DataFrame(columns=['conditionF', 'conditionB', 'conditionA', 'conditionD', 'conditionC'])
cols_to_find = ['conditionA', 'conditionB', 'conditionC']
[i for i in range(len(df.columns.values)) if df.columns.tolist()[i] in cols_to_find ]
好主意?
这有效,也保留了顺序:
[df.columns.get_loc(col) for col in cols_to_find]
[2, 1, 4]
列表理解是你的朋友。