【发布时间】:2019-08-13 02:49:08
【问题描述】:
我有一个包含这些列的数据框 - maxlevel, level1id, level2id, level3id。
我需要根据 maxlevel 列中的值填充一个新列 - newcol_value。
如果maxlevel = 1,则使用level1id 填充newcol_value
如果maxlevel = 2,则使用level2id 填充newcol_value
如果maxlevel = 3,则使用level3id 填充newcol_value
我试过了。
id_dict = {1:'level1id', 2:'Level2ID', 3:'level3id', 4:'level4id', 5:'level5id'}
df['id'] = df[id_dict[df['maxlevel']]]
但由于df['maxlevel] 正在提供系列,我收到以下错误。
TypeError: 'Series' 对象是可变的,因此它们不能被散列
如何根据maxlevel 列中的值填充newcol_value 值?
【问题讨论】:
标签: python pandas dataframe series pandasql