我有一个数据框,其中包含度量列 SalesMonth1
-- SalesMonth12
以及另一列 Index
和 price
。
我正在尝试执行以下操作,但它不起作用。您能提出更好的方法吗?
For i in range(12):
DF['Newcol'] = np.where(DF["Index"] >0,
DF["SalesMonth[i]"] * DF["price"],
DF["SalesMonth[i]"])
最佳答案
你很接近。试试这个:
for i in range(12):
df['newcol'+str(i)] = np.where(df['Index'] > 0,
df['SalesMonth'+str(i)] * df['price'],
df['SalesMonth'+str(i)])
诀窍是通过 str
将整数转换为字符串。
关于python - 迭代 Pandas 数据框中的多个列并创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49411605/