我有一个大熊猫数据框(> 100 列)。我需要删除各种列集,我希望有一种使用旧列的方法
df.drop(df.columns['slices'],axis=1)
我已经建立了选择,例如:
a = df.columns[3:23]
b = df.colums[-6:]
作为 a
和 b
代表我要删除的列集。
下列
list(df)[3:23]+list(df)[-6:]
产生正确的选择,但我不能用 drop
实现它:
df.drop(df.columns[list(df)[3:23]+list(df)[-6:]],axis=1)
ValueError:操作数无法与形状 (20,) (6,) 一起广播
我环顾四周,但无法得到答案。
(以下与我收到的错误有关):
python numpy ValueError:操作数无法与形状一起广播
这个感觉他们有类似的问题,但“切片”不是分开的: Deleting multiple columns based on column names in Pandas
干杯
原文由 BAC83 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用
np.r_
无缝组合多个范围/切片:然后,您可以使用
idx
为您的列编制索引并提供给pd.DataFrame.drop
: