全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 python论坛
827 2
2019-12-25
悬赏 30 个论坛币 已解决
id    a       b           

1     2       5                    
1     6       6         
1     7       10        
1     9       20         

2     7        5                       
2     6        6         
2     30      10           
2     9       20     

请教大神一个问题,id那一列是人,一个人对应一个id,a和b列对应的是数字
现在要求计算每个人,也就是每个id对应的,a列数字大于b列数字的个数,比如id是1这个人的a列数字大于b的没有,就是0个,id是2这个人的a列数字大于b的是2个


用python怎么进行统计呢,谢谢


最佳答案

fengxingliulizi 查看完整内容

import pandas as pd data = [[1,2,5], [1,6,6], [1,7,10], [1,9,20], [2,7,5], [2,6,6], [2,30,10], [2,9,20]] df = pd.DataFrame(data=data, columns=['id','a','b']) df['c'] = df['a'] > df['b'] result = df['c'].groupby(by=df['id']).sum()
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2019-12-25 15:57:20
import pandas as pd

data = [[1,2,5],
        [1,6,6],
        [1,7,10],
        [1,9,20],
        [2,7,5],
        [2,6,6],
        [2,30,10],
        [2,9,20]]

df = pd.DataFrame(data=data, columns=['id','a','b'])
df['c'] = df['a'] > df['b']
result = df['c'].groupby(by=df['id']).sum()
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-12-26 11:10:55
fengxingliulizi 发表于 2019-12-25 15:57
import pandas as pd

data = [[1,2,5],
非常感谢!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群