I am having 2 columns in a dataframe like so
name1 name2
<NA> SAM
JIM <NA>
<NA> <NA>
I am trying to obtain a merged column like so
name1 name2 name3
<NA> SAM SAM
JIM <NA> JIM
<NA> <NA> <NA>
I want to have the column name3
either of the values of name1
or name2
whichever is not NA
.
I tried using
df %>% mutate( name3 = ifelse( is.na(name1), name2, name1) )
I read the posts regarding ifelse() which return the size of the logical vector as input here.
df %>% mutate( name3 = ifelse( is.na(name1), return(name2), return(name1)) )
But I still get 1
as output - am not sure why.