我有一个包含70列的数据集,我想提取所有行,即前4列和后54列。我尝试了以下方法:
df_3 = df_3.iloc[:, [0:3, 16:70]]
但是它一直在说这是错误的语法... 然后,我尝试使用np.r_(尽管不确定我是否真正了解它,我更喜欢使用iloc的解决方案)
df_3 = df_3.iloc[:, np.r_[0:3, 16:69]]
但是这两次返回前4列,中间的列(4:15)是我要删除的列... 然后我尝试了这段代码:
df_3 = df_3.iloc[:, [0:3, -54:]]
,但是它返回与np.r _
相同的输出。和我的最新尝试
df_3 = df_3.iloc[:, [+4:, -54:]]
返回语法错误...
我的python版本是3.7.4,pandas版本是0.25.1
在此方面提供的任何帮助都将不胜感激。谢谢大家
答案 0 :(得分:0)
您可以使用df.columns和df.loc
实现取前4列和后54列,将它们转到列表并加起来。然后使用.loc
访问数据框中的这些列df_3 = df_3.loc[:, df_3.columns[0:4].to_list() + df_3.columns[-54:].to_list()]