2014-04-01 44 views
2

结合最好的方式,我有这样一个数据帧:什么是两个相互排斥的列中的R

> df <- data.frame(A=c("a",NA,"b"),B=c(NA,"c",NA)) 
> df 
    A B 
1 a <NA> 
2 <NA> c 
3 b <NA> 

我怎么到:

> df 
    A 
1 a 
2 c 
3 b 
+0

答案[here](http://stackoverflow.com/q/19253820/324364)可能会有所帮助。 – joran

+0

...另外,请注意您的标签。 tips-and-tricks标签的描述用粗体字母表示不使用它。 – joran

回答

2

是这样的?

df <- with(df, data.frame(AB=ifelse(is.na(A), as.character(B), as.character(A)))) 
> df 
    AB 
1 a 
2 c 
3 b 
0

有很多方法来做这个。这里有一种方法

data.frame(A=apply(df,1,na.omit))