Hello,

Use an index giving the "" positions.


i <- nchar(dtpmgd) == 0L
dtpmgd[i] <- dtpaigd[i]



Or, in one line,


dtpmgd[nchar(dtpmgd) == 0L] <- dtpaigd[nchar(dtpmgd) == 0L]



Hope this helps,

Rui Barradas


Às 07:02 de 18/11/21, ROSLINAZAIRIMAH BINTI ZAKARIA . escreveu:
Dear all,

I try to merge two columns consisting of characters using the 'coalesce'
function from dplyr package. However, two data still have not merged, data
no. 124 1nd 143. Any help is very much appreciated. I provide the data as
follows.

dput(dtpaigd)
c("C+", "B+", "C+", "B+", "C+", "A-", "A ", "B+", "A-", "C ",
"B+", "A-", "B+", "B ", "B ", "B ", "D ", "B+", "B ", "B ", "C+",
"B ", "A ", "A-", "B+", "A-", "A ", "B ", "A ", "C ", "B ", "A+",
"C ", "B ", "B+", "C+", "B ", "B ", "C+", "B ", "B+", "B ", "A-",
"B+", "B ", "A-", "C+", "A ", "A-", "C+", "C+", "B ", "B+", "A-",
"A-", "B ", "E ", "A-", "B+", "B ", "A ", "B+", "A-", "A-", "A ",
"B+", "A-", "A-", "A-", "B+", "C ", "A-", "A ", "A-", "A ", "A-",
"A-", "A ", "A ", "B+", "B ", "A+", "B ", "B ", "B+", "A-", "B+",
"B+", "A-", "A-", "B+", "A-", "A-", "A-", "A-", "A-", "A ", "B+",
"B ", "A-", "A-", "A-", "A ", "A-", "A-", "B+", "A-", "A ", "B+",
"B+", "A-", "B+", "A-", "A ", "B+", "A ", "D ", "A+", "B ", "B+",
"A+", "B+", "B ", "", "A ", "A-", "B ", "A ", "B+", "E ", "B ",
"B ", "A ", "A-", "B ", "A ", "C+", "B ", "A ", "B+", "B+", "A ",
"", "B ")
dput(dtpmgd)
c("", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "", "", "", "", "", "A-", "", "",
"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "",
"A ", "")

dt_comb1gd <- coalesce(dtpaigd, dtpmgd)
dput(dt_comb1gd)
c("C+", "B+", "C+", "B+", "C+", "A-", "A ", "B+", "A-", "C ",
"B+", "A-", "B+", "B ", "B ", "B ", "D ", "B+", "B ", "B ", "C+",
"B ", "A ", "A-", "B+", "A-", "A ", "B ", "A ", "C ", "B ", "A+",
"C ", "B ", "B+", "C+", "B ", "B ", "C+", "B ", "B+", "B ", "A-",
"B+", "B ", "A-", "C+", "A ", "A-", "C+", "C+", "B ", "B+", "A-",
"A-", "B ", "E ", "A-", "B+", "B ", "A ", "B+", "A-", "A-", "A ",
"B+", "A-", "A-", "A-", "B+", "C ", "A-", "A ", "A-", "A ", "A-",
"A-", "A ", "A ", "B+", "B ", "A+", "B ", "B ", "B+", "A-", "B+",
"B+", "A-", "A-", "B+", "A-", "A-", "A-", "A-", "A-", "A ", "B+",
"B ", "A-", "A-", "A-", "A ", "A-", "A-", "B+", "A-", "A ", "B+",
"B+", "A-", "B+", "A-", "A ", "B+", "A ", "D ", "A+", "B ", "B+",
"A+", "B+", "B ", "", "A ", "A-", "B ", "A ", "B+", "E ", "B ",
"B ", "A ", "A-", "B ", "A ", "C+", "B ", "A ", "B+", "B+", "A ",
"", "B ")

*Thank you and best regards.*

*RoslinaZakaria*


______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to