Я хочу отфильтровать строки таблицы, которые содержат «*» в строковом значении столбца. Проверка только этой колонки.Как определить, заканчивается ли строка «заканчивается» другой строкой в R?
string_name = c("aaaaa", "bbbbb", "ccccc", "dddd*", "eee*eee")
zz <- sapply(tx$variant_full_name, function(x) {substrRight(x, -1) =="*"})
Error in FUN(c("Agno I30N", "VP2 E17Q", "VP2 I204*", "VP3 I85F", "VP1 K73R", :
could not find function "substrRight"
4-е значение zz должно быть TRUE этим.
в python есть функция endswith для строк [string_s.endswith ('*')] Есть ли что-то похожее на то, что в R?
Кроме того, это проблема из-за '*' как персонажа, так как это означает любой символ? grepl также не работает.
> grepl("*^",'dddd*')
[1] TRUE
> grepl("*^",'dddd')
[1] TRUE
Вы можете избежать '*' 'grepl ("\\ *", 'DDDD *')'. Чтобы найти строки, которые заканчиваются символом '*', вы можете использовать 'grepl (" \\ * $ ", string_name)' – jdharrison