【发布时间】:2020-06-23 06:03:38
【问题描述】:
我有一个包含 5 列的数据框(第一列是 ID,4 列是国家/地区名称)
我想要每行的国家名称列表,满足相应国家列的特定条件。
df = {'id':['i1','i2','i3','i4','i5'], 'c1':[3,2,4,1,4], 'c2':[4,2,5,5,5], 'c3':[4,5,3,3,3], 'c4':[5,1,2,2,2]}
在上述情况下,我需要一个评级为 4 及以上的 ID。
我希望输出是每个 ID 的评级为 4 及以上的公司列表。可以是数据框或字典。
highest_rated_companies = { 'i1': ['c2', 'c3', 'c4'], 'i2': ['c3'], 'i3': ['c1', 'c2'], 'i4': ['c2'], 'i5': ['c1', 'c2'] }
【问题讨论】:
-
请分享数据而不是图片,在这种情况下是您的输入数据框
-
你试过什么?哪里出错了?输出是要被理解为您编写的字典还是再次隐式地作为数据框?
-
@对不起,我已经分享了数据
-
@DavidWierichs 输出可以是字典或数据框。我正在寻找一个简短的代码。我使用 2 个“for 循环”完成了它,但效率不高。
标签: python pandas numpy dictionary