Python 通过取平均值或中值来缩小数据集

Python 通过取平均值或中值来缩小数据集,python,pandas,Python,Pandas,假设我有以下数据帧df: 我想缩小这个数据集并创建数据帧df2,这样就只有3个观测值。因此,我想取1,2,3的平均值,将其作为一行,然后取4,5,6,将其作为第二行,最后取7,8,9,将其作为第三行 最终结果如下 Number Apples 1 50 2 80 3 110 你能行 n=3 s=df.groupby((df.Number-1)//n).Apples.mean() Number 0 50 1

假设我有以下数据帧df:

我想缩小这个数据集并创建数据帧df2,这样就只有3个观测值。因此,我想取1,2,3的平均值,将其作为一行,然后取4,5,6,将其作为第二行,最后取7,8,9,将其作为第三行

最终结果如下

Number     Apples
1            50
2            80
3            110
你能行

n=3
s=df.groupby((df.Number-1)//n).Apples.mean()
Number
0     50
1     80
2    110
Name: Apples, dtype: int64
你能行

n=3
s=df.groupby((df.Number-1)//n).Apples.mean()
Number
0     50
1     80
2    110
Name: Apples, dtype: int64

这是一种更简单的方法,应该比groupby运行得更快-

df.rolling(3).mean()[2::3]

这是一种更简单的方法,应该比groupby运行得更快-

df.rolling(3).mean()[2::3]