我有一个数据框,其中有一个名为“value”的变量。在该变量中有数字范围(例如 90-94),但也有前面带有字母的范围,例如 LT、GE、LE 等。我想过滤掉前面带有字母的行,只得到数字范围。
起初,我以为过滤器语句中的字母后面有一个空格会起作用,但实际上什么也没发生。
我的具体代码块:
OHperformance <- OHperformance %>%
filter(Value != ".",
Value !="PS",
Value !="LT ",
Value !="GE ",
Value != "LE ")
然后,我能够制作一个向量,但必须单独标记它们。
OHperformance <- OHperformance %>%
filter(!Value %in% c("LT50", "LE5", "LE20", "LE10", "GE95", "GE90", "GE80", "GE50", ".", "PS"))
是否有更简单的方法来消除 LE 或 GE 的行?
执行此操作的一种方法是查看如果从
Value
中删除非数字字符,它是否会发生变化:
library(dplyr)
OHperformance |>
filter(
Value == gsub("\\D", "", Value)
)