pandas - pandas 条件分组和计数值
问题描述
我想计算'a'标签的相同'aa'值对应于'b'标签的'bb'值的数量。这是问题的简化版本。
例如,当职位为程序员时,与“计算机技能”对应的“Python”值的数量(工作的“aa”值作为“a”标签)。
我运行以下代码,但它不起作用,对。结果应该是 2 'bb' 对应于 2 'aa'。
import numpy as np
import pandas as pd
data= {'id':[1, 1, 1, 2, 2, 2, 3, 3, 3, 3],
'Label':['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'b', 'c'],
'Values':['aa', 'bb', 'cc', 'dd', 'ee', 'cc', 'aa', 'bb', 'bbb', 'cc']
}
dataset=pd.DataFrame(data=data)
d=dataset.groupby(by=['Label'])
for k, value in d:
print(value[value.Label=='a'].groupby('Values').count())
解决方案
您可以执行以下操作:
import pandas as pd
data= {'id':[1, 1, 1, 2, 2, 2, 3, 3, 3, 3],
'Label':['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'b', 'c'],
'Values':['aa', 'bb', 'cc', 'dd', 'ee', 'cc', 'aa', 'bb', 'bbb', 'cc']
}
dataset=pd.DataFrame(data=data)
d=dataset.groupby(by=['Label'])
for k, value in d:
print(value.loc[value.Label=='a','Values'].value_counts())
推荐阅读
- javascript - 如何在 Angular 中使用 Node Javascript 库?
- flutter - 带有图像抖动的 AppBar 标题
- ios - 移动到 plist 选项卡时 Xcode 崩溃
- java - 为什么 getItems 方法不适用于按钮
- r - R中方括号csv中的多个值
- c# - 鉴于 Current SendGrid Nuget 包已损坏,我如何告诉 teamCity 使用我指定的版本
- paypal - 为什么 PayPal BILLING.SUBSCRIPTION.PAYMENT.FAILED 返回错误?
- groovy - 如何仅从主要方法写入日志
- javascript - 如何使用动画更改按钮单击时的 div 内容
- amazon-s3 - 如何使用 WSO2 EI 代理将文件从 Amazon s3 移动到本地?