我有数组
Y =[[ 5. 0. 4. 1. 9. 2. 1. 3. 1. 4. 3. 5. 3. 6. 1. 7. 2. 8.
6. 9. 4. 0. 9. 1. 1. 2. 4. 3. 2. 7. 3. 8. 6. 9. 0. 5.
6. 0. 7. 6. 1. 8. 7. 9. 3. 9. 8. 5. 9. 3. 3. 0. 7. 4.
9. 8. 0. 9. 4. 1. 4. 4. 6. 0. 4. 5. 6. 1. 0. 0. 1. 7.
1. 6. 3. 0. 2. 1. 1. 7. 9. 0. 2. 6. 7. 8. 3. 9. 0. 4.
6. 7. 4. 6. 8. 0. 7. 8. 3. 1. 1. 2. 3.]]
然后我使用以下命令:Y.astype(int)
在astype命令之后打印Y时,我仍然得到结果5. 0. 4.依此类推。但是我想要的是5 0 4等...
我怎么了?
答案 0 :(得分:1)
numpy.astype
返回数组的副本。它不会就地操纵数组。因此,您必须将值分配给变量:
Y = Y.astype(int)
答案 1 :(得分:-2)
好吧,如果我们这里有numpy之类的东西:
Y = np.array([5., 0., 4., 1., 9.])
我们可以像这样将数组的每个元素转换为int:
map(int, Y)
要获得此结果:
[5, 0, 4, 1, 9]