如何使用合并花呢?

Dam*_*mbo 1 r dplyr

我有这个小题词

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)

Psi*_*dom 5

使用do.callcoalesce

do.call(coalesce, df)
# [1] "a" "b" "b"
Run Code Online (Sandbox Code Playgroud)

do.call将列按顺序传递dfcoalesce,因此等效于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)