gpt4 book ai didi

python-3.x - 跳过 Pandas 的每一行

转载 作者:行者123 更新时间:2023-12-04 02:07:50 26 4
gpt4 key购买 nike

我试图通过跳过每 4 行来分割我的数据框。我能完成它的最好方法是获取每 4 行的索引,然后选择所有其他行。如下所示:-

df[~df.index.isin(df[::4].index)]

我想知道是否有更简单和/或更 pythonic 的方法来完成这项工作。

最佳答案

一种可能的解决方案是通过取模创建掩码并通过 boolean indexing 过滤:

df = pd.DataFrame({'a':range(10, 30)}, index=range(20))
#print (df)


b = df[np.mod(np.arange(df.index.size),4)!=0]
print (b)
a
1 11
2 12
3 13
5 15
6 16
7 17
9 19
10 20
11 21
13 23
14 24
15 25
17 27
18 28
19 29

详细信息:

print (np.mod(np.arange(df.index.size),4))
[0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3]

print (np.mod(np.arange(df.index.size),4)!=0)
[False True True True False True True True False True True True
False True True True False True True True]

如果唯一索引值使用来自评论的稍微更改的@jpp 解决方案:

b = df.drop(df.index[::4], 0)

关于python-3.x - 跳过 Pandas 的每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49403877/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com