对 Pandas DataFrame 中的连续值进行分组
在数据分析中,我们经常会遇到数据是有序的,需要对连续值进行分组的情况价值观在一起。此任务可以使用自定义分组技术在 pandas 中实现。
假设我们有一个 DataFrame,其中包含名为“a”的列,其中包含以下值:
[1, 1, -1, 1, -1, -1]
我们的目标是将这些值分组值到连续的块中,如下所示:
[1,1] [-1] [1] [-1, -1]
为了实现这一点,我们可以采用以下方法步骤:
这是实现这些的代码步骤:
import pandas as pd df = pd.DataFrame({'a': [1, 1, -1, 1, -1, -1]}) print(df) custom_series = df['a'].ne(df['a'].shift()).cumsum() print(custom_series) for i, g in df.groupby(custom_series): print(i) print(g) print(g.a.tolist())
这将输出所需的分组:
1 a 0 1 1 1 [1, 1] 2 a 2 -1 [-1] 3 a 3 1 [1] 4 a 4 -1 5 -1 [-1, -1]
以上是如何对 Pandas DataFrame 中的连续值进行分组?的详细内容。更多信息请关注PHP中文网其他相关文章!