假设我有一个数据集:
test = data.frame(x=c(1:11), y=as.character(c(1:11)))
其中“y”列由字符/字符串组成。现在,我想更改包含两个字符的字符串(即 test[10,2] & test[11,2]),以便这些字符串以字符“0”开头。结果将是“010”和“011”,而其他字符串(只有一个字符)保持不变。对我来说,合乎逻辑的解决方案是:
test[nchar(test[,2])==2,2] = paste(c("0", test[nchar(test[,2])==2,2]), collapse="")
实际上,只有 test[10,2] 和 test[11,2] 受到影响。奇怪的是,结果是 test[10,2] = "01011",而 test[11,2] = "01011"。这意味着具有两个字符的所有字符串都与前面的“0”一起粘贴。这绝对不是我想看到的。
当满足某些条件(长度)时,我应该怎么做才能将一个字符添加到数据集中的字符串中?您的回答将不胜感激。