我正在尝试用连字符和/或数字解析字符串以调用特定的行。
gene_name <- c("EP-CAM")
Genename=paste0("RNA$",gene_name)
Gene=eval(parse(text = paste0(Genename)))
这是错误:
Error in eval(parse(text = paste0(Genename))) :
object 'CAM' not found
例如,我将需要解析RNA $ EP-CAM。反引号不会给我输出,而只会显示字符串。
使用数字将发生相同的情况。我想这只是parse命令的问题。有替代方案吗? 这类似于该问题:Unexpected symbol error in parse(text = str) with hyphen after a digit
非常感谢您的支持。
D
答案 0 :(得分:2)
在通话中添加打勾对我来说很有效。这里的问题是“ EP-CAM”实际上不是有效名称。
RNA <- list(`EP-CAM` = 0)
gene <- c("EP-CAM")
geneName <- paste0("RNA$`", gene, "`")
eval(parse(text = geneName))
# [1] 0
实际上,以下内容将该列重命名为EP.CAM
。
data.frame(`EP-CAM` = 0)
# EP.CAM
# 1 0