我有一个列名称列表,如下所示:
colnames = ['split1', 'split2', 'split3', 'split4', 'split5', 'split6', 'split7']
我在一行代码中使用了这一点,我在其中迭代列表项,如下所示:
for i in range(0,x+2):
df[d[i+1]] = df.groupby(d[i]).colnames[i].transform(lambda x : x.factorize()[0]+1)
这给了我一个属性错误:
AttributeError: 'DataFrameGroupBy' object has no attribute 'columns'
但是,如果我单独为代码提供colname项,它就可以正常工作:
df['dot2'] = df.groupby('dot1').split1.transform(lambda x : x.factorize()[0]+1)
在
df.groupby(d[i]).colnames[i]
中,colnames[i]
是一个变量。你可能需要做些什么相关问题 更多 >
编程相关推荐