python - 如何用Python中从某个键开始的另一个数组填充一个NP数组?

标签 python numpy logistic-regression

我有一个数据框,名为x。它由 2 列组成,如下所示 (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

但是,它给了我这个错误:

Exception: Dot product shape mismatch, (712,) vs (3, 712)

如何使用键 1-2 中的 x 数组填充我的 newX NPArray,但保持 0 处的所有键相同?

最佳答案

您可能需要在数据框后添加

newX[:, 1:] = x.values
newX
Out[171]: 
array([[0., 0., 0.],
       [0., 1., 0.],
       [0., 0., 0.],
       [0., 1., 1.],
       [0., 0., 0.]])

关于python - 如何用Python中从某个键开始的另一个数组填充一个NP数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54029900/

相关文章:

python - 替换 DataFrame 中的值

python - 如何计算最长的连续 '0' 两侧是数字 '1' in is string using pandas dataframe

python - 适用于Python3的PIP安装问题:请考虑将此目录添加到PATH

python - 当数据以空字符串开头时开始串行读取

python - 如何在不使用 for 循环的情况下向量化这两个 numpy 运算?

machine-learning - 具有文本特征的数据集的逻辑回归

scikit-learn - scikit学习: how to check coefficients significance

python - 如何使用不均匀子数组作为平铺来平铺一维 numpy 数组?

Python Image.fromarray() 不接受从列表构建的 ndarray 输入

r - 在 R 中部署具有预定系数的逻辑回归模型