2017-06-08 30 views
-2

事实证明,我有非常大的float数组,3000×16 包含它被称为data_array中的变量,我想留在相同的只是一列:蟒蛇复制numpy的阵列到一个新的内存地址

distortions = data_array[:, 1] 

的问题是,我想所有的元素转换为整数,但代码:

for element in distortions: 
    element = int(element) 

不工作。

相信是因为失真是指向第二列data_array中的变量,即不复制到新的存储器地址,因此不能改变单个列的类型如numpy的阵列的元素都必须是相同的类型。是这样吗?

如果是这样,我的问题则是:我怎么能复制在新的内存地址栏,然后根据我的需要改造吗?

总致谢。

露西亚。

data_array[:, 1].astype(int) 

一个Python环等:

+0

在的话,请使用英语,所以我们都可以在英语理解 – Nuageux

+0

请 – EdChum

+0

对不起,这个问题已经解决了,它是从浮动改变acerca阵列列的类型为int –

回答

0

使用astype到整个阵列或整个切片转换

for element in distortions: 
    element = int(element) 

不改变的distortions元件; element = ...重新分配迭代变量并没有做任何事情来distoritions