我正在处理这段代码,并停留在这里。
import numpy as np
a = np.arange(10)
a[7:] = np.nan
从理论上讲,它应该插入从索引7开始到数组末尾的缺失值。但是,当我运行代码时,会将一些随机值而不是NA插入到数组中。
有人可以解释这里发生了什么,我应该如何故意将缺失值插入numpy数组?
答案 0 :(得分:1)
非数字(NA)是浮点数的一种特殊类型。默认情况下,np.arange()
创建一个类型为int
的数组。将其强制转换为float
可以允许您添加NA:
import numpy as np
a = np.arange(10).astype(float)
a[7:] = np.nan