У меня есть такой df (с ~ 800 000 строк)
# str
# 1 .||.
# 2 .
# 3 .|..
# 4 ..
, и я хочу новый кадр данных, подобный этому (запишите местоположение в каждой строке символов с помощью .
) (извините заформатирование столбцов)
# str loc
# 1 .||. 1 4
# 2 . 1
# 3 .|.. 1 3 4
# 4 .. 1 2
Я могу получить местоположения с помощью gregexpr(".", str, fixed = TRUE)
, но я не знаю, как получить первую часть вывода gregexpr
без трех частей атрибута.Позже я буду использовать векторы местоположения в других вычислениях.Поскольку gregexpr
векторизован, я не хочу использовать цикл для этого, так как это займет слишком много времени.Я думаю, что эта проблема должна была быть рассмотрена в предыдущих вопросах, но я не могу найти решение.Кроме того, если есть совершенно другой способ справиться с этим, пожалуйста, сообщите мне.