如何根据条件转换numpy矩阵中的值?

时间:2015-02-09 18:13:22

标签: python numpy matrix

我试图将所有零值转换为一个,如question中所述。但是,使用索引方法对矩阵没有影响。

enter image description here

如何将矩阵中的所有0都更改为-1?

1 个答案:

答案 0 :(得分:2)

您的布尔索引失败,因为new_train_data当前是字符串dtype='|S3')的矩阵,而不是浮点数!

您可以将矩阵转换为dtype=np.float64以将其转换为浮点数,然后使用布尔索引将值-1分配给等于0.0的所有元素:

new_training_data = new_training_data.astype(np.float64)
new_training_data[new_training_data == 0] = -1