在R中对具有相同列名的变量求和
Summing the variables with same column name in R
我有一个包含列名的数据框;
[1] "sample_id" "seq91 Acinetobacter;junii"
[3] "seq157 Acinetobacter;lwoffii" "seq139 Acinetobacter;johnsonii-lwoffii"
[5] "seq225 Acinetobacter;johnsonii" "seq224 Acinetobacter;lwoffii"
[7] "seq278 Acinetobacter;calcoaceticus" "seq327 Acinetobacter;lwoffii"
[9] "seq309 Acinetobacter;lwoffii" "seq508 Acinetobacter;ursingii"
[11] "seq394 Acinetobacter;haemolyticus" "seq540 Acinetobacter;bouvetii"
[13] "seq558 Acinetobacter;bouvetii" "seq541 Acinetobacter;lwoffii"
[15] "seq575 Acinetobacter;haemolyticus-johnsonii-lwoffii" "seq665 Acinetobacter;junii"
[17] "seq707 Acinetobacter;lwoffii" "seq755 Acinetobacter;haemolyticus-johnsonii-lwoffii"
[19] "seq677 Acinetobacter;marinus" "seq758 Acinetobacter;johnsonii"
[21] "seq836 Acinetobacter;junii" "seq768 Acinetobacter;septicus-ursingii"
[23] "seq770 Acinetobacter;bouvetii-johnsonii" "seq928 Acinetobacter;tjernbergiae"
[25] "seq864 Acinetobacter;harbinensis" "seq902 Acinetobacter;parvus"
删除 seqxxx 数字后,我想求和同名列的值。由于列名必须是唯一的,去掉seq和numbers后如何求和呢?谢谢
注意:我的问题的前一版本包括删除 seqxxx 编号,并且通过在一个问题中提出多个问题来违反本网站的规则 post。请原谅我如此不知情posting。
您可以尝试按以下模式替换:
^.*?(?=\bAcinetobacter\b)
然后,将上面捕获的任何内容替换为空字符串即可。这是一个示例:
x <- "seq157 Acinetobacter;lwoffii"
output <- sub("^.*?(?=\bAcinetobacter\b)", "", x, perl=TRUE)
output
[1] "Acinetobacter;lwoffii"
我有一个包含列名的数据框;
[1] "sample_id" "seq91 Acinetobacter;junii"
[3] "seq157 Acinetobacter;lwoffii" "seq139 Acinetobacter;johnsonii-lwoffii"
[5] "seq225 Acinetobacter;johnsonii" "seq224 Acinetobacter;lwoffii"
[7] "seq278 Acinetobacter;calcoaceticus" "seq327 Acinetobacter;lwoffii"
[9] "seq309 Acinetobacter;lwoffii" "seq508 Acinetobacter;ursingii"
[11] "seq394 Acinetobacter;haemolyticus" "seq540 Acinetobacter;bouvetii"
[13] "seq558 Acinetobacter;bouvetii" "seq541 Acinetobacter;lwoffii"
[15] "seq575 Acinetobacter;haemolyticus-johnsonii-lwoffii" "seq665 Acinetobacter;junii"
[17] "seq707 Acinetobacter;lwoffii" "seq755 Acinetobacter;haemolyticus-johnsonii-lwoffii"
[19] "seq677 Acinetobacter;marinus" "seq758 Acinetobacter;johnsonii"
[21] "seq836 Acinetobacter;junii" "seq768 Acinetobacter;septicus-ursingii"
[23] "seq770 Acinetobacter;bouvetii-johnsonii" "seq928 Acinetobacter;tjernbergiae"
[25] "seq864 Acinetobacter;harbinensis" "seq902 Acinetobacter;parvus"
删除 seqxxx 数字后,我想求和同名列的值。由于列名必须是唯一的,去掉seq和numbers后如何求和呢?谢谢
注意:我的问题的前一版本包括删除 seqxxx 编号,并且通过在一个问题中提出多个问题来违反本网站的规则 post。请原谅我如此不知情posting。
您可以尝试按以下模式替换:
^.*?(?=\bAcinetobacter\b)
然后,将上面捕获的任何内容替换为空字符串即可。这是一个示例:
x <- "seq157 Acinetobacter;lwoffii"
output <- sub("^.*?(?=\bAcinetobacter\b)", "", x, perl=TRUE)
output
[1] "Acinetobacter;lwoffii"