将NA分配给R 3.1.2中的值无法正常工作

时间:2016-02-04 19:15:58

标签: r matrix na assign

我有一个大的3维矩阵(1440x720x15)“y”,并希望将NA分配给-1e30的所有值 当我这样做时,它会为所有内容分配NA,包括值> 0.即使我尝试重新分配为0,所有值都变为0.可能出错了什么?

dim(y)
[1] 1440  720   15
range(y)
[1] -1.00000e+30  2.67814e+28
y[y <  -(10^30) ]<-NA
range(y)
[1] NA NA
y[y =  -(10^30) ]<- 0
range(y)
[1] 0 0

1 个答案:

答案 0 :(得分:2)

这是因为range()默认报告NA,如果有的话:

尝试

y[ y <=  -(10^30) ] <- NA
range(y, na.rm=TRUE)