在pandas中,是否有一种简单的方法可以对一系列数值增量调用groupby
?例如,给定下面的示例,我是否可以使用0.155
的增量对列B
进行分组,以便例如,列B
中的前几组被划分为'0-0.155,0.155-0.31 ...`
import numpy as np
import pandas as pd
df=pd.DataFrame({'A':np.random.random(20),'B':np.random.random(20)})
A B
0 0.383493 0.250785
1 0.572949 0.139555
2 0.652391 0.401983
3 0.214145 0.696935
4 0.848551 0.516692
或者,我可以先将数据按照这些增量分类到一个新的列中,然后使用 groupby
来确定在列 A
中可能适用的任何相关统计信息?
(qa_scores_data.groupby(['Video Name', pandas.cut(qa_scores_data['Frame Name'].astype('float'), [0.5, 12.5, 24.5, 36.5, 48.5])])).mean()
- Nagabhushan S NValueError: Length of grouper (9235) and axis (8769) must be same length
。 - Peyman.sum()
函数是将(0,0.155]之间的所有数字相加,以得到您所看到的数字。 - elPastornp.arrange()
虽然完全可用,但一个简单的列表同样有效(尚未测试大数据集的性能)。 - elPastor