Pandas数据帧:如何使用自定义方式剪切数据帧?

2024-04-25 21:36:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用我自己的规则将一个数据帧切割成几个数据帧。

>>> data = pd.DataFrame({'distance':[1,2,3,4,5,6,7,8,9,10],'values':np.arange(0,1,0.1)})
>>> data
   distance  values
0         1     0.0
1         2     0.1
2         3     0.2
3         4     0.3
4         5     0.4
5         6     0.5
6         7     0.6
7         8     0.7
8         9     0.8
9        10     0.9

我将根据distance列的值剪切data。例如,有一些bin [1,3),[3,8),[8,10),[10,10+),如果数据的列distance在同一个bin中,我将它们分成相同的组并计算列values的平均值或和值

>>> data1 = data[lambda df:(df.distance >= 1) & (df.distance < 3)]
>>> data1
   distance  values
0         1     0.0
1         2     0.1
>>> np.mean(data1['values'])
0.05

如何有效地将源数据帧分为几个组(然后保存、处理它们…)?


Tags: 数据lambdadataframedfdatabin规则np

热门问题