当我尝试用np.nan替换数组中的数字时,我使用了如下函数:
X[X>9.] = np.nan
但是,我想与另一个数组进行比较,而不是数字。
例如:
A = [5.09901951, 4.84148737, 3.72021505, 4.28952212, 3.87814389, 3.7094474]
X = [7.54950976, 2.02074369, 1.26010752, 3.14476106, 8.53907194, 10.0547237]
X[X>A] = np.nan
它似乎不起作用。而且我也不想使用for循环,因为如果数组大小变大会导致麻烦。
任何想法或帮助都会非常感激。
艾萨克
答案 0 :(得分:0)
根据评论@hpaulj: 如果您将列表更改为numpy数组:
import numpy as np
A = np.array([5.09901951, 4.84148737, 3.72021505, 4.28952212, 3.87814389, 3.7094474])
X = np.array([7.54950976, 2.02074369, 1.26010752, 3.14476106, 8.53907194, 10.0547237])
X[X>A] = np.nan
X将是:
array([ nan, 2.02074369, 1.26010752, 3.14476106, nan,
nan])