我有这个小题词
library(tidyverse)
data_frame(first = c("a", NA, "b"),
second = c(NA, "b", NA),
third = c("a", NA, NA))
Run Code Online (Sandbox Code Playgroud)
我想使用coalesce()
逐行方式仅获取非NA的值。
所需的输出将是第一个非NA值的向量,我们可以发现从左到右逐行检查数据帧
[1] "a" "b" "b"
Run Code Online (Sandbox Code Playgroud)
使用do.call
有coalesce
:
do.call(coalesce, df)
# [1] "a" "b" "b"
Run Code Online (Sandbox Code Playgroud)
do.call
将列按顺序传递df
到coalesce
,因此等效于coalesce(df$first, df$second, df$third)
。
df <- data_frame(
first = c("a", NA, "b"),
second = c(NA, "b", NA),
third = c("a", NA, NA)
)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
457 次 |
最近记录: |