如何在numpy矩阵下将特定列中的值转换为整数类型

时间:2015-11-27 05:40:28

标签: python numpy

如何将此矩阵的第二列转换为int类型 inplace

import numpy as np
x = np.array([[1.23e+02, 2.3], [1.3e+01, 2.9],[1.2e+01, 83.3]])

期望的输出:

array([[ 123. ,    2],
       [  13. ,    2],
       [  12. ,   83]])

我能提出的最好的是这个,但不是inlace

x[:,1].astype(int)

1 个答案:

答案 0 :(得分:2)

您无法就地修改数组的类型,但是如果您愿意,可以截断(或发言权):

>>> import numpy as np
>>> x = np.array([[1.23e+02, 2.3], [1.3e+01, 2.9],[1.2e+01, 83.3]])
>>> np.trunc(x[:,1], x[:,1])
array([  2.,   2.,  83.])
>>> x
array([[ 123.,    2.],
       [  13.,    2.],
       [  12.,   83.]])