gpt4 book ai didi

r - 强制 summary() 报告 NA 的数量,即使没有

转载 作者:行者123 更新时间:2023-12-05 03:12:55 26 4
gpt4 key购买 nike

我有很多数值向量,有些有 NA,有些没有。这是一个包含两个向量的示例:

x1 <- c(1,2,3,2,2,4)
summary(x1)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.000 2.000 2.000 2.333 2.750 4.000

x2 <- c(1,2,3,2,2,4,NA)
summary(x2)
Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
1.000 2.000 2.000 2.333 2.750 4.000 1

最后,我想rbind所有的summary:

rbind(summary(x1), summary(x2))
Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
[1,] 1 2 2 2.333 2.75 4 1
[2,] 1 2 2 2.333 2.75 4 1
Warning message:
In rbind(summary(x1), summary(x2)) :
number of columns of result is not a multiple of vector length (arg 1)

有没有办法强制 summary 计算 NA 而不会出现错误或警告?

我所有的试验都失败了:

summary(x1, na.rm=FALSE)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.000 2.000 2.000 2.333 2.750 4.000
summary(x1, useNA="always")
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.000 2.000 2.000 2.333 2.750 4.000
summary(addNA(x1))
1 2 3 4 <NA>
1 3 1 1 0

我也试过以下方法,但有点乱:

tmp <- rbind(summary(x1[complete.cases(x1)]), summary(x2[complete.cases(x2)]))
tmp <- cbind(tmp, c(sum(is.na(x1)), sum(is.na(x2))))
colnames(tmp)[ncol(tmp)] <- "NA's"
tmp
Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
[1,] 1 2 2 2.333 2.75 4 0
[2,] 1 2 2 2.333 2.75 4 1

最佳答案

我还没有找到强制摘要显示 NA 的方法。但是,您可以编写一个自定义函数来返回您想要的内容:

my_summary <- function(v){
if(!any(is.na(v))){
res <- c(summary(v),"NA's"=0)
} else{
res <- summary(v)
}
return(res)
}

关于r - 强制 summary() 报告 NA 的数量,即使没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32011873/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com