选择大熊猫0.25.1

时间:2020-09-11 10:58:06

标签: python pandas

我有一个包含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

在此方面提供的任何帮助都将不胜感激。谢谢大家

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()]