给定一组向量,coalesce()
找到每个位置的第一个非缺失值。它的灵感来自 SQL COALESCE
函数,该函数对 SQL NULL
执行相同的操作。
参数
- ...
-
一个或多个向量。这些将是recycled 相互对抗,并将被转换为它们的共同类型。
- .ptype
-
声明所需输出类型的可选原型。如果提供,它将覆盖
...
中向量的公共类型。 - .size
-
声明所需输出大小的可选大小。如果提供,这将覆盖
...
中向量的通用大小。
也可以看看
na_if()
用 NA
替换指定值。 tidyr::replace_na()
将 NA
替换为值。
例子
# Use a single value to replace all missing values
x <- sample(c(1:5, NA, NA, NA))
coalesce(x, 0L)
#> [1] 2 0 3 4 0 5 1 0
# The equivalent to a missing value in a list is `NULL`
coalesce(list(1, 2, NULL), list(NA))
#> [[1]]
#> [1] 1
#>
#> [[2]]
#> [1] 2
#>
#> [[3]]
#> [1] NA
#>
# Or generate a complete vector from partially missing pieces
y <- c(1, 2, NA, NA, 5)
z <- c(NA, NA, 3, 4, 5)
coalesce(y, z)
#> [1] 1 2 3 4 5
# Supply lists by splicing them into dots:
vecs <- list(
c(1, 2, NA, NA, 5),
c(NA, NA, 3, 4, 5)
)
coalesce(!!!vecs)
#> [1] 1 2 3 4 5
相关用法
- R dplyr copy_to 将本地数据帧复制到远程src
- R dplyr consecutive_id 为连续组合生成唯一标识符
- R dplyr context 有关“当前”组或变量的信息
- R dplyr compute 强制计算数据库查询
- R dplyr count 计算每组中的观察结果
- R dplyr cumall 任何、全部和平均值的累积版本
- R dplyr case_match 通用向量化 switch()
- R dplyr c_across 合并多列的值
- R dplyr cross_join 交叉连接
- R dplyr case_when 通用向量化 if-else
- R dplyr group_trim 修剪分组结构
- R dplyr slice 使用行的位置对行进行子集化
- R dplyr sample_n 从表中采样 n 行
- R dplyr row_number 整数排名函数
- R dplyr band_members 乐队成员
- R dplyr mutate-joins 变异连接
- R dplyr nth 从向量中提取第一个、最后一个或第 n 个值
- R dplyr group_split 按组分割 DataFrame
- R dplyr mutate 创建、修改和删除列
- R dplyr order_by 用于排序窗口函数输出的辅助函数
- R dplyr percent_rank 比例排名函数
- R dplyr recode 重新编码值
- R dplyr starwars 星球大战人物
- R dplyr desc 降序
- R dplyr between 检测值落在指定范围内的位置
注:本文由纯净天空筛选整理自Hadley Wickham等大神的英文原创作品 Find the first non-missing element。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。