我有一个名为x
的数据框。这包括两列,看起来像这样(712,2):
SibSp Parch
731 0 0
230 1 0
627 0 0
831 1 1
391 0 0
.................
由于逻辑回归需要“自由权重”,因此我构建了一个newX
变量,其形状为x
数据框,但值为空。
newX = np.zeros(shape=(x.shape[0], x.shape[1] + 1))
这会生成一个(712,3)np数组:
[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]
...
[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]
由于第一个索引(0)是自由权重,因此我现在想将x值分配给索引1和2。
newX[:, 1:] = x
但是,它给了我这个错误:
例外:点积形状不匹配(712,)vs(3,712)
如何使用键1-2中的newX
数组填充x
NPArray,但将所有键0保持不变?
答案 0 :(得分:2)
您可能需要在数据框后添加values
newX[:, 1:] = x.values
newX
Out[171]:
array([[0., 0., 0.],
[0., 1., 0.],
[0., 0., 0.],
[0., 1., 1.],
[0., 0., 0.]])