我有两个向量,它们有一些共同的值,但长度不同:
x <- 1:10
# [1] 1 2 3 4 5 6 7 8 9 10
y <- c(3, 5, 8)
# [1] 3 5 8我想将这两个向量组合成一个数据帧,并产生以下结果:
data.frame(big = x,
small = c(NA, NA, 3, NA, 5, NA, NA, 8, NA, NA))
# big small
# 1 1 NA
# 2 2 NA
# 3 3 3
# 4 4 NA
# 5 5 5
# 6 6 NA
# 7 7 NA
# 8 8 8
# 9 9 NA
# 10 10 NA发布于 2017-01-28 22:14:35
一种可能是使用长和短之间的match索引短向量,并将nomatch参数设置为NA (“在没有找到匹配的情况下返回的值”)。
data.frame(big = x,
small = y[match(x, y, nomatch = NA)])https://stackoverflow.com/questions/41915155
复制相似问题