均值和中位数函数调用的不同结果通过应用于缺失值

得出结论,如果矩阵中所有值均缺失,则均值和中位数分别给出NA和NaN,

例如,

print dict(filter(lambda x:x[1] in diff_tolistoflist,res.items()))

Result:{'cXboTHyIeZaof6x7': ['#de6262','#ffb88c'],'utTtWdchE2T6vUF5': ['#A3DAC3','#8BD0D4']}

想知道这可能是什么原因,如果我仅检查is.na()进行过滤,它在下游会有所不同吗?由于我看到is.na()一直为TRUE:

x<-as.matrix(c(NA,NA,NA))
apply(x,2,mean,na.rm = TRUE)
> apply(x,median,na.rm = TRUE)
[1] NA
> apply(x,na.rm = TRUE)
[1] NaN
wang0707 回答:均值和中位数函数调用的不同结果通过应用于缺失值

NaN的意思是“不是数字”,也是由除以零等运算导致的!

由于mean()的心脏在背景中的计算方式类似于sum(x)/len(x)(或等效值),因此存在除法运算,因此如果值缺失,则可以生成NaN(因为len(NA)是0)。 median()并非如此。

在任何情况下,对is.na()complete的过滤就足够了。同样根据文档is.na()的NaN输出TRUE。

本文链接:https://www.f2er.com/3167335.html

大家都在问