У меня есть плохо структурированные данные, которые я пытаюсь очистить. У меня есть список ключевых слов, которые я могу использовать для извлечения фреймов данных из файла CSV. Мои необработанные данные структурированы примерно следующим образом:
Имеется 7 столбцов со значениями, первые столбцы являются строковыми идентификаторами, такими как кредитный рейтинг или символ страны (для данных FX), тогда как остальные 6 столбцов являются либо заголовками, подобными строке процентного изменения (например, + 10%), либо просто числовое значение. Поскольку все эти данные объединены, я хочу иметь возможность извлекать данные для каждой категории. Так, например, я хотел бы извлечь все строки между моим ключевым словом "credit" и моим ключевым словом "FX" в моем первом столбце. Есть ли способ сделать это легко в base R или dplyr?
например.
df %>%
filter(column1 = in_between("credit", "FX"))
Пример кадра данных:
row 1: c('random',-1%', '0%', '1%, '2%')
row 2: c('credit', NA, NA, NA, NA)
row 3: c('AAA', 1,2,3,4)
...
row n: c('FX', '-1%', '0%', '1%, '2%')
И я бы хотел следующий вывод:
row 1: c('credit', -1%', '0%', '1%, '2%')
row 2: c('AAA', 1,2,3,4)
...
row n-1: ...