簡體   English   中英

根據字符變量的一部分從R數據框中刪除行

[英]Remove rows from an R dataframe based on parts of a character variable

我有一個數據框,該數據框的第一列中有一個變量(類型:字符),某些行以“#”開頭。 但是變量中還有其他詞(讓我們說:“#AA”。我想刪除第一列變量以#開頭的行。我沒有找到一種方法。有什么建議嗎?

數據的示例為:

mydata = as.data.frame(matrix(sample(c("AA", "AB", "BA", "BB", "--"), 7200, replace = T),
+                        nrow = 600, ncol = 12))
mydata$V1 = as.character(mydata$V1)
mydata$V1 = ifelse(mydata$V1 == "AA", "# AA",mydata$V1)
head(mydata)

謝謝。

嘗試在第一列中每個元素的開頭搜索字符,然后使用該索引進行子設置:

head(mydata[-grep("^#", mydata$V1),])
#   V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12
# 2 -- BB AB -- -- BB AB AB AA  BB  AA  BB
# 3 AB BB AB AB -- -- BA AA AA  BB  BB  AA
# 4 -- AA AB BB BA BB AB BA BA  AB  --  BB
# 5 AB BA AB BA BB AB BA BB BB  AA  BB  BA
# 6 BA AA -- AB BB -- BA BB AB  AB  BB  --
# 7 AB BA BA AA BB BB BA BB AA  BB  BB  BA

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM