我有这样的一组数据[(1,1,5),(1,2,7),(2,1,8),(2,2,9)]
tuple里面的三个数据分别代表学生idstudent_id
,老师teacher_id
,分数score
我要得到的数据结果是:
{
1:[
'avg_score':6,
'detail':
{1:5,
2:7}
],
2: [
'avg_score':8.5,
'detail':
{1:8,
2:9}
]
}
也就是需要根据学生id去分组,key是学生ID,值是平均分和详细的每个老师给的分数
我知道可以采用groupby分组,然后得到平均分,但是怎么得到这种数据格式呢?用pandas是否是好的选择?求大神指点迷津,谢谢
pandas是个好的选择,但还是看你的实际情况:
假如你就这一个地方要用,而且数据量不大,那么自己写点小程序就OK了
假如你多个地方要做统计,数据量一般,内存完全hold住,那么pandas是上佳选择
假如你数据量较大,内存也hold不住,那用mongodb比较适合
假如你数据量相当大,单机或者两三台机器都hold不住,那就hdfs + spark吧