извлечение определенных строк между двумя последовательными пустыми строками в один столбец в R - PullRequest
0 голосов
/ 29 августа 2018

Я новичок в R. У меня есть таблица, в которой есть только один столбец, но много строк. Мне нужно извлечь определенные строки между двумя последовательными пустыми строками в один столбец. Или нужно извлечь строки между двумя строками в двух разных строках. Я не знаю, как это сделать. Заранее спасибо.

1 Ответ

0 голосов
/ 29 августа 2018

Добро пожаловать в Stack Exchange и спасибо за ваш пост. Однако я рекомендую прочитать Минимальный воспроизводимый и проверяемый пример и Как задать post. Вы значительно увеличите вероятность получения ответа.

Для подстановки столбцов между двумя строками между ними можно использовать следующий подход (gsub и data.frame subsetting):

df <- data.frame(foo = c("X","", "A", "B", "C", "D", "A", "", "E"), stringsAsFactors = FALSE)
df
#    foo
# 1   X
# 2    
# 3   A
# 4   B
# 5   C
# 6   D
# 7   A
# 8    
# 9   E

# empty string
empty_between <- grep("^$", df$foo)
df[(empty_between[1] + 1):(empty_between[2] - 1), , drop = FALSE]
#    foo
# 3   A
# 4   B
# 5   C
# 6   D
# 7   A

# between two strings (in this case "A")
string_between <- grep("^A$", df$foo)
df[(string_between[1] + 1):(string_between[2] - 1), , drop = FALSE]
#    foo
# 4   B
# 5   C
# 6   D
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...