从python中的数据框中删除特定行

时间:2020-09-17 18:37:03

标签: python pandas dataframe

我的数据集很大,我想删除特定的行。我想要的是保持索引0删除索引1,保持索引2删除索引3,以此类推,直到数据集结束。我希望最终拥有一半的数据集。关于数据集的示例如下

    activity    accx    accy          accz         gyrx       gyry          gyrz
0   sitting 0.285583    0.936890    -0.104187   -3.647104   2.385671    -0.137195
1   sitting 0.280151    0.948547    -0.106018   -3.700457   2.580030    -1.162348
2   sitting 0.278381    0.945007    -0.103149   -3.727134   3.003049    -0.586890
3   sitting 0.285706    0.943237    -0.103088   -4.043445   5.171494    -0.472561
4   sitting 0.290283    0.943298    -0.102722   -4.382622   7.378049    -0.289634

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

dfevens = df.iloc[0::2].copy()

只需使用iloc过滤偶数索引即可。

答案 1 :(得分:0)

您可以指定要删除的行。

df.drop([1,3], axis=0)

对于一般解决方案,您可以使用np.arange

df.drop(np.arange(1,len(df),2), axis=0)

如果内存不足,请使用inplace参数

df.drop(np.arange(1,len(df),2), axis=0, inplace=True)
相关问题