import re
#Creating several new colums with a for loop and adding them to the original df.
#Creating permutations for a second level of binary variables for df
for i in list_ib:
for j in list_ib:
if i == j:
break
else:
bina = df[i]*df[j]
print(i,j)
i是属于数据帧(df)的二进制列,j是相同的列。 我已经计算了每一列与每一列的乘法。我的问题是,如何将所有新的二进制乘积列添加到原始df中?
我试过:
df = df + df[i,j,bina]
但我没有得到我需要的结果。有什么建议吗?
通常,您使用其内置的
__setitem__()
将列添加到Dataframe
,您可以使用[]
访问它。例如:据我所知,
i,j,bina
不是df的一部分。为其中的每一个构建数组,每个数组元素表示一个“row”,并且一旦为i,j,bina
准备好所有行,就可以这样连接:或者,一旦收集了
'i', 'j' and 'bina'
的所有数据,并假设在单独的数组中有每个数据,则可以执行以下操作:只有当这三个数组的元素数与DataFrame df中的行数相同时,此操作才有效。
我希望这有帮助!
相关问题 更多 >
编程相关推荐