gpt4 book ai didi

r - 如何查找包含特定字符串的列名中 `NA`值的个数,并分别显示每列 `NA`值的个数?

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

假设我有一堆列,其中许多列名称中包含“start_time”。如何计算每一列中 NA 值的数量并分别显示答案(不是所有找到的 NA 值的总和)。

示例输出:

abc_start_time
## 5

xyz_start_time
## 1

ggg_start_time_end
## 0

或类似的东西。

最佳答案

使用 colSums() 将 TRUE/FALSE 与 grep() 相加以识别所有需要的列:

colSums(is.na(df[grep("start_time", names(df))]))

# abc_start_time xyz_start_time ggg_start_time_end
# 5 2 0

is.na(df[grep("start_time", names(df))] 部分将返回一个 bool 矩阵 (TRUE/FALSE),其中包含“starts_with”的所有列name. colSums() 部分将按列将所有 TRUE 为 1 和 FALSE 为 0 相加。数据

df <- data.frame(abc_start_time = seq.Date(as.Date("2023/01/01"), as.Date("2023/01/30"), by = "day"),
xyz_start_time = seq.Date(as.Date("2023/01/01"), as.Date("2023/01/30"), by = "day"),
ggg_start_time_end = seq.Date(as.Date("2023/01/01"), as.Date("2023/01/30"), by = "day"),
another_column = seq.Date(as.Date("2023/01/01"), as.Date("2023/01/30"), by = "day"))
df[c(1,3,5:7), 1] <- NA
df[c(6,7), 2] <- NA

关于r - 如何查找包含特定字符串的列名中 `NA`值的个数,并分别显示每列 `NA`值的个数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75139506/

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