相关疑难解决方法(0)

R:计算数据帧中每行的NAs

我有数据框具有批次ID,并且每个批次都执行了六次测试的结果.数据如下所示:

batch_id  test1  test2  test3  test4  test5  test6
001       0.121     NA  0.340  0.877  0.417  0.662
002       0.229  0.108     NA  0.638     NA  0.574
Run Code Online (Sandbox Code Playgroud)

(此数据框中有几百行,每个batch_id只有一行)

我正在寻找一种方法来计算每个batch_id(每行)有多少个NA.我觉得这应该可以使用最多几行R代码,但我实际编码时遇到了麻烦.有任何想法吗?

r dataframe

20
推荐指数
2
解决办法
5万
查看次数

使用 dplyr 将函数应用于 data.frame 中的一行

在基地R我会做以下事情:

d <- data.frame(a = 1:4, b = 4:1, c = 2:5)
apply(d, 1, which.max)
Run Code Online (Sandbox Code Playgroud)

随着dplyr我可以做到以下几点:

library(dplyr)
d %>% mutate(u = purrr::pmap_int(list(a, b, c), function(...) which.max(c(...))))
Run Code Online (Sandbox Code Playgroud)

如果d我需要指定另一列,但我希望它可以使用任意数量的列。

从概念上讲,我想要类似的东西

pmap_int(list(everything()), ...)
pmap_int(list(.), ...)
Run Code Online (Sandbox Code Playgroud)

但这显然行不通。我将如何规范地解决这个问题dplyr

r dplyr purrr tidyverse

8
推荐指数
1
解决办法
135
查看次数

标签 统计

r ×2

dataframe ×1

dplyr ×1

purrr ×1

tidyverse ×1