我正在嘗試洗掉一組字串中每個字串的前 7 個字符。我一直在這里關注 akrun 的精彩答案(如何在 R 中向字串添加字符)。這是我一直在使用的命令,但它回傳一個錯誤:
backup_mouse_CTRL <- sub("(.{7})(.*)", "\\2", mouse_CTRL)
"Error in as.character.default(x) : no method for coercing this S4 class to a vector"
我寫的有錯誤嗎?如果有人能幫我將這七個字符也添加到串列中的每個字串中(“mm10---”),您能幫我很多忙嗎?這對我以后的分析很有幫助。
我一直試圖弄清楚如何在此處粘貼我的一些資料集以提供可重復的示例,但我的資料是 Seurat 物件(用于生物學中的 RNA-seq 分析)并且原始資料有許多 GB 大。因此,很抱歉我無法在此處粘貼任何資料。
如果這個問題是基本問題,我深表歉意——我已經回顧了其他類似措辭的問題,并試圖將它們整合到我正在做的事情中,但不幸的是我運氣不佳。
uj5u.com熱心網友回復:
您可以將substring, 與 結合使用paste0。如果要單獨替換每個字串,請使用mapply, else sapply:
mapply(\(x, y) paste0(y, substring(x, 8)), s, r)
# AAAABDBBADCDCD AABDBBCCAACDAC AADBDDCBABDBCC
# "ZYYZXXYACDABAA" "ZYXXXXXADDBADB" "YZXYXZYDCDADAD"
sapply(s, \(x, r) paste0(r, substring(x, 8)), r='XXXXXXX')
# AAAABDBBADCDCD AABDBBCCAACDAC AADBDDCBABDBCC
# "XXXXXXXBADCDCD" "XXXXXXXCAACDAC" "XXXXXXXBABDBCC"
資料:
s <- c("AAAABDBBADCDCD", "AABDBBCCAACDAC", "AADBDDCBABDBCC")
r <- c("YYYYXXY", "YZZXXYY", "YYYZYXY")
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/403642.html
標籤:
下一篇:將所有其他元音設為向量大寫
