0
我想計算兩個向量的總和乘積,但其中之一有NA。如何在R中處理crossprod中的缺失值?
crossprod(c(4.5,4,4,3,NA), c(1,5,4,1,1))
在計算,我想對待NA作爲一個零。但在原始數據框架中,我仍然希望將其保留爲NA以進行進一步的數據處理。任何暗示將不勝感激。
我想計算兩個向量的總和乘積,但其中之一有NA。如何在R中處理crossprod中的缺失值?
crossprod(c(4.5,4,4,3,NA), c(1,5,4,1,1))
在計算,我想對待NA作爲一個零。但在原始數據框架中,我仍然希望將其保留爲NA以進行進一步的數據處理。任何暗示將不勝感激。
如果你的十字架產品比之更復雜,你可以定義一個新的功能,它取代NA的參數:
crossprod.replacena <- function(x, y, val=0) {
crossprod(replace(x, is.na(x), val),
replace(y, is.na(y), val)
)
}
或者你可以撥打你的論點replace
沒有定義的功能,如replace
不修改其參數。
可以使用sum
功能,並告訴它忽略遺漏值:
sum(c(4.5,4,4,3,NA)*c(1,5,4,1,1), na.rm = TRUE)
非常感謝!這正是我需要的。 –
@QYang我很困惑。如果這正是你需要的,你爲什麼不接受它? –