var() 不断返回 NA 或 NaN R

var() keeps returning NA or NaN R

我正在尝试计算数据框中变量的方差,但是 var(df$var) 保持 returning NA 或 NaN。变量是两个原始变量之间的比率; FOODperINC = FOODexp / TOTALINC

FOODexp 和 TOTALINC 的 var() 做 return 个数字。

我搜索并尝试了以下方法:

remove NA's from original variables and FOODperINC.

add 1 to TOTALING, to avoid dividing over 0

var(as.numeric()) / var(as.vector())

我不太明白为什么我不能计算方差。我做错了什么?

我的参考代码:

df4 = df3[!is.na(df3$FOODTOT.x),]
df4 = df4[!is.na(df4$FINCAFTM.x),]


df4$FINCAFTM.x = df4$FINCAFTM.x +1
df4$INCperFOOD = df4$FOODTOT.x / df4$FINCAFTM.x

df3$SEAperINC.x = df3$SEAFOOD.x / df3$FINCAFTM.x
df3$FOODperINC.x = df3$FOODTOT.x / df3$FINCAFTM.x

var.test(df3$FOODperINC.x, df3$SEAperINC.x)

var(df4$FOODperINC.x)


var(df3$SEAperINC.x, na.rm=T)
var(as.numeric(df4$FOODperINC.x), na.rm=T)
which(is.null(df4$FOODperINC.x))

cov(df5$SEAperINC.x, df3$FOODperINC.x)
View(df4$FOODperINC.x)

脑残;

df4$INCperFOOD != df4$FOODperINC

谢谢大叔!

"INCperFOOD", "FOODperINC", "FOODperINC.x",), row.names = c(NA, 
5L), class = "data.frame")