Извиняюсь заранее, это может быть вопрос повторения. Тем не менее, я просто потратил два последних часа на stackoverflow и, похоже, не нашел решения.R: grepl выберите первый символ на строке
Я хочу использовать grepl
для обнаружения строк, которые начинаются с цифры, это то, что я пытался использовать, но он не дал мне rigt ответ:
grep.numeric=as.data.frame(grepl("^[:digit:]",df_mod$name))
Я думаю, что проблема из регулярное выражение "^[:digit:]"
, но я не мог понять это.
UPDATE
Мой dataframe выглядит так, это огромный, но ниже пример:
ID mark name
1 whatever name product
2 whatever 10 product
3 whatever 250 product
4 another_mark other product
Я хочу, чтобы обнаружить продукты, которые их имена начинаются с числа.
UPDATE 2
применения grep.numeric=grepl("^[[:digit:]]",df_mod$name)
на примере ниже дать мне правильный ответ, который:
grep.numeric
[1] FALSE TRUE TRUE FALSE
Но, что сводишь меня с ума, когда я pply эту фикцию к моей реальной dataframe:
grep.numeric=grepl("^[[:digit:]]",df_mod[217,]$nom)
дать мне этот результат:
grep.numeric
[1] FALSE
Но на самом деле, то, что у меня есть это:
df_mod[217,]$nom
[1] 100 lipo 30 gélules
Пожалуйста, помогите мне.
Try '^ [[: digit:]] '- он должен быть внутри класса символов –
Я использовал вопрос, связанный с Perl, как исходный дубликат, но он также связан с классом символов POSIX, поэтому он должен быть здесь и здесь. –
@Wiktor Stribiżew Я переключил ''^[: digit:] "' by '"^[[: digit:]] ", но ничего не изменилось. – sarah