gpt4 book ai didi

str_detect 中的正则表达式?

转载 作者:行者123 更新时间:2023-12-04 12:36:45 29 4
gpt4 key购买 nike

我有像c1c5, c5c1, c4c3 ...这样的colnames ...

我想检索所有以 c4c5 开头或结尾的 colnames。

我试过使用以下方法:

str_detect(colnames(df), "c5c\\d+")

str_detect(colnames(df), "c4c\\d+")

str_detect(colnames(df), "c\\d+c4")

str_detect(colnames(df), "c\\d+c5")

有没有办法将它组合成一个表达式?请指教。

最佳答案

尝试使用sapply:

colnames(df)[sapply(X = colnames(df), FUN = function (X) substr(X, 1, 2) %in% c("c4", "c5") | substr(X, 3, 4) %in% c("c4", "c5"))]

有了这个,您将以“c4”或“c5”开始或结束colnames。

如果你有长度大于 4 的 colnames 或者你想使用不同于 "c4"或 "c5"的东西,你可以将它概括为:

patterns <- c("c4", "c5") #you can change it

colnames(df)[sapply(X = colnames(df), FUN = function (X) substr(X, 1, 2) %in% patterns | substr(X, nchar(X) - 1, nchar(X)) %in% patterns )]

您甚至可以根据情况对其进行更多概括。

关于str_detect 中的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50268390/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com