是否有一种Pythonic方法可以将DataFrame(xRaw
)中的列提升为连续幂?有没有类似的东西
xRaw[:,k] = xRaw.pow(k) for k in range(1,6)
最佳答案
这是一个 Vandermonde 矩阵,numpy 有一个内置函数 np.vander
如果你有
s = pd.Series([1,2,3,4,5])
然后
np.vander(s, 6)
array([[ 1, 1, 1, 1, 1, 1],
[ 1, 2, 4, 8, 16, 32],
[ 1, 3, 9, 27, 81, 243],
[ 1, 4, 16, 64, 256, 1024],
[ 1, 5, 25, 125, 625, 3125]])
要添加回 df
,您可以使用 concat
df = pd.concat([df, pd.DataFrame(vander)], axis=1)
关于python - 如何将 pandas DataFrame 中的列提升为连续幂,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58347986/