【发布时间】:2015-09-05 09:38:59
【问题描述】:
问题设置
熊猫数据框
df = pd.DataFrame({'Group': ['A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A'], 'Subgroup': ['Group 1', 'Group 1', 'Group 1', 'Group 1', 'Group 1', 'Group 1', 'Group 2', 'Group 2', 'Group 2'], 'Keyword': ['kw 1', 'kw 1', 'kw 1', 'kw 2', '+kw +2', 'kw 2', 'kw 3', 'kw 3', 'kw 3'], 'Normalized': ['kw 1', 'kw 1', 'kw 1', 'kw 2', 'kw 2', 'kw 2', 'kw 3', 'kw 3', 'kw 3'], 'Criterion Type': ['Exact', 'Phrase', 'Broad', 'Phrase', 'Broadified', 'Exact', 'Broad', 'Exact', 'Phrase'], 'Max CPC': [1.62, 1.73, 0.87, 1.70, 0.85, 1.60, 0.99, 1.58, 1.68], 'CPC Rank': [2, 1, 3, 1, 3, 2, 3, 2, 1], 'Type Rank': [1, 2, 3, 2, 3, 1, 3, 1, 2]})
这样可以将列放在正确的位置:
df = df[['Group', 'Subgroup', 'Keyword', 'Normalized', 'Criterion Type', 'Max CPC', 'CPC Rank', 'Type Rank']]
目标
groupby['Group', 'Subgroup', 'Normalized'],然后是rankMax CPCs。接下来,我想将与CPC Rank 关联的Max CPC 映射到基于Criterion Type 和我自己的自定义排名确定的Type Rank:
{'Exact':1, 'Phrase':2, 'Broadified':3, 'Broad':4}
结果将是New CPC 列及其相应的Max CPC。
【问题讨论】:
标签: python dictionary pandas dataframe ranking