gpt4 book ai didi

python - 仅保留 DataFrame 中连续重复行的第一行

转载 作者:行者123 更新时间:2023-11-28 22:42:23 25 4
gpt4 key购买 nike

<分区>

假设我有一个包含一列数据的 DataFrame。例如:

np.random.random_integers(0,2,1000)
data = np.cumsum(np.random.random_integers(0,2,1000))
idx = pd.date_range('1-1-2001', freq='D', periods=1000)
df = pd.DataFrame(data, idx)

我不想使用完整的 DataFrame,而是只想返回那些与前一行不同的行。

因此,这

2001-01-20   21
2001-01-21 21
2001-01-22 21
2001-01-23 23
2001-01-24 24
2001-01-25 24

会导致这样

2001-01-20   21
2001-01-23 23
2001-01-24 24

现在我会这样做

dff = df.diff() # Compute another Series with the differences
dff.ix[0, ] = df.ix[0, ] # Instead of NAN for the row use first row of df
df['diff'] = dff # Add as column in df
df = df[df['diff'] >= 1] # Filter out
df = df.ix[:, 0:-1] # Drop additional column

这看起来非常复杂。我觉得我错过了什么。有什么想法可以让它更像 python 和 Pandas 吗?

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