根据R中的条件合并列
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了根据R中的条件合并列相关的知识,希望对你有一定的参考价值。
我想合并两个列,lat.x和lat.y,所以我得到一个新列lat。
数据:
lat.x lat.y lat
1 1 1
2 2 2
NA 3 3
4 NA 4
5 6 5
我试过了:
df2$Lat <- ifelse(df$Lat.x == "NA", df$Lat.y, df$Lat.x)
答案
如果x == "NA"
是一个字符为x
的文字字符串,则无法使用"NA"
测试NA。相反,你应该使用基本函数is.na()
。
这有效:
df <- data.frame(
lat.x = c(1, 2, NA, 4, 5),
lat.y = c(1, 2, 3, NA, 5)
)
df$lat <- ifelse(is.na(df$lat.x), df$lat.y, df$lat.x)
此外,您应该考虑以可复制粘贴的格式提供示例数据(就像我上面所做的那样)。这样可以更轻松地测试代码并提供答案。
以上是关于根据R中的条件合并列的主要内容,如果未能解决你的问题,请参考以下文章