r - Tidyverse 解决方案,用于从多个字段中计数空值
问题描述
我试图通过计算NA
12 个不同列的空值数和响应数(值 + )来总结我的数据。(为此示例重命名)
数据:
my_df <- structure(list(SCR1 = c(100, 80.2, 70.3,
90.1, 100, 100, 100, 100, 40.6, 80.2, 80.2, 90.1, 30.7, 100,
80.2), SCR2 = c(75.25, 75.25, 75.25, 75.25, 75.25, 75.25,
100, 100, 50.5, 50.5, 75.25, 50.5, 50.5, 100, 50.5), SCR3 = c(100,
100, 100, 100, 75.25, 75.25, 100, 100, 100, 75.25, 100, 100,
NA, 100, 75.25), SCR4 = c(100, 50.5,
50.5, 75.25, 100, 75.25, 100, 100, 100, 75.25, 50.5, 100, 100,
100, 75.25), SCR5 = c(100, 75.25, 50.5,
75.25, 100, 75.25, 100, 100, 50.5, 75.25, 75.25, 75.25, 25.75,
100, 75.25), SCR6 = c(100, 25.75, 50.5,
75.25, 100, 75.25, 100, 100, 75.25, 75.25, 75.25, 100, 50.5,
100, 50.5), SCR7 = c(75.25, 50.5, 75.25,
100, 50.5, 75.25, 100, 100, 75.25, 50.5, 75.25, 100, 25.75, 100,
75.25), SCR8 = c(75.25, 75.25, 50.5, 75.25,
75.25, 75.25, 100, 100, 75.25, 75.25, 75.25, 75.25, 50.5, 100,
75.25), SCR9 = c(50.5, NA, NA, 25.75, 100, NA,
NA, NA, 100, NA, NA, NA, 75.25, NA, NA), SCR10 = c(25.75,
NA, NA, NA, NA, 1, NA, NA, NA, NA, NA, NA, NA, NA, NA), SCR11 = c(100,
75.25, 50.5, 75.25, 100, 75.25, 100, 100, 75.25, 75.25, 75.25,
100, 50.5, 100, 50.5), SCR12 = c(75.25, 75.25,
50.5, NA, 75.25, 75.25, 100, 100, 75.25, NA, 75.25, 75.25, 50.5,
100, 50.5), ID = 1:15), row.names = c(NA, 15L), class = "data.frame")
在这里我想返回值的数量和数量,NA
然后是百分比NA
我找到了一个计算数量的解决方案,NA
但我正在努力添加带有计数和百分比的第二/第三列。
my_df %>%
map_df(function(x) sum(is.na(x))) %>%
gather(feature, num_nulls) %>%
dplyr::arrange(desc(num_nulls))
如何添加计数和百分比 na?我正在尝试使用 tidyverse 并避免使用 SQL。
解决方案
你快到了。可以使用附加mutate
语句创建附加的两列:
my_df %>%
map_df(function(x) sum(is.na(x))) %>%
gather(feature, num_nulls) %>%
dplyr::arrange(desc(num_nulls)) %>%
mutate(num_responses = nrow(my_df) - num_nulls,
percent = num_responses/nrow(my_df))
推荐阅读
- php - 仅在不匹配时保存一行
- python - 等待鼠标点击被解除的方式?
- javascript - html中的无限背景
- swift - 在 SwiftUI 中强制视图位于视图的右下角
- jquery - 将 Ajax 与 jQuery DataTables 一起使用时,如何确定如何处理返回的数据?
- typescript - elasticsearch 和 typescript - 将结果绑定到模型
- javascript - GATSBY:TypeError:无法读取未定义的属性“包含”
- regression - 使用 LinearModelFit 或 Predict 在 Mathematica 中尝试多元线性回归模型
- java - Java,安卓应用。无法发送 post 请求 HttpURLConnection conn
- json - 关联数组在swift中无法正常工作