范围的字符+数字
问题描述:
任何人都可以告诉如何在R中创建字符+数字混合的范围/序列。我想创建从SEQ1到SEQ26000的范围。但是,范围的最大限制存储在一个向量中,我想将该向量用作范围限制而不是指定的数字。范围的字符+数字
我的代码:
snptags<-paste("SNP1":"SNP",probesnum)
我得到这些错误:
error in "SNP1":"SNP" : NA/NaN argument
In addition: Warning messages:
1: In paste("SNP1":"SNP", probesnum) : NAs introduced by coercion
2: In paste("SNP1":"SNP", probesnum) : NAs introduced by coercion
感谢一大堆!
答
很简单:
probesnum <- 26000
snptags <- paste0("SNP",1:probesnum)
或
snptags <- sprintf("SNP%d",1:probesnum)
答
请注意,您的代码很接近。问题是在
paste("SNP1":"SNP",probesnum)
^^^^^^^^^^
|-- specifically, this part
比较以上whats与@BenBolker的第一个答案。
序列操作,:
,必须在数字(整数或实数)
可以使用THEN的序列可以是paste
倒是为字符串。
在你的代码中,你给它两个字符串并要求它创建一个序列,而:
不知道该怎么做。
+0
谢谢,明白了。我是R新手..所以.. – Jason
+0
没有问题。如果@ Ben的回答解决了您的问题(我认为它的确存在),请确保单击旁边的复选标记,以表明这一点。 –
如果存在probenum可能等于0的可能性,您可能需要考虑使用'seq_len(probesnum)'代替'1:probesnum'。 –