如何选择/删除R字符串中引号中的任何内容?如何删除字符列中的数字?
我有一列字符串,下面是一个示例: “abc” “def” 123 456 ghi jkl mno23 我想删除带有引号和数字的值,以便最终数据看起来像 ghi jkl mno23如何选择/删除R字符串中引号中的任何内容?如何删除字符列中的数字?,r,single-quotes,R,Single Quotes,我有一列字符串,下面是一个示例: “abc” “def” 123 456 ghi jkl mno23 我想删除带有引号和数字的值,以便最终数据看起来像 ghi jkl mno23 如何在R中实现这一点,有什么帮助吗?我们可以使用base R中的grepl(或grep) subset(df1, !grepl("'", col1)) 或使用grep df1[grep("'", df1$col1, invert = TRUE),] 如果我们需要同时删除数字
如何在R中实现这一点,有什么帮助吗?我们可以使用
base R
中的grepl
(或grep
)
subset(df1, !grepl("'", col1))
或使用grep
df1[grep("'", df1$col1, invert = TRUE),]
如果我们需要同时删除数字字符串和
“
subset(df1, grepl('^[A-Za-z]+$', col1))
或者更改先前的条件,以检查从字符串的开始(^
)到结束($
)是否存在
或(|
)一个或多个数字([0-9]+
),并对从grepl
导出的逻辑向量求反(!
)
subset(df1, !grepl("'|^[0-9]+$", col1))
# col1
#5 ghi
#6 jkl
或者如果是任何数字
subset(df1, !grepl("'|[0-9]", col1))
# col1
#5 ghi
#6 jkl
数据
df1您能否显示示例的dput
,以正确获取结构。可能您需要子集(df1,!grepl(“”,col1))
谢谢您,它成功了。我能对号码做同样的事吗?我在本专栏中也有一些数字?@Stats\u如果您想删除所有数字或任何数字,即41、'4a'、'aaa4'
应将所有这些数字与'
一起删除,那么在您的代码中,我删除了带引号的内容,我在本专栏中也有数字,像ghi 123 jkl一样,我想删除123部分。@Stats\u Uwash您可以通过编辑更新您的帖子,并且预期的输出子集(df1,!grepl(“| ^[0-9]+$”,col1))
应该适用于trhat
df1 <- data.frame(col1 = c("'abc'", "'def'", 123, 456, "ghi", "jkl"), stringsAsFactors = FALSE)