Предположим, у меня есть следующий фрейм данных:
df <- data.frame(BR.a=rnorm(10), BR.b=rnorm(10), BR.c=rnorm(10),
USA.a=rnorm(10), USA.b = rnorm(10), FRA.a=rnorm(10), FRA.b=rnorm(10))
Я хочу создать список фреймов данных, разделяя их по первой части имени столбца, т. Е. Столбцы, начинающиеся с "BR", будутбыть одним элементом списка, столбцы, начинающиеся с «USA», будут другими, и т. д.
Я могу получить имена столбцов и разделить их, используя strsplit
.Однако я не уверен, как будет лучшим способом перебрать его и отделить фрейм данных.
strsplit(names(df), "\\.")
дает мне список, в котором элементами верхнего уровня являются имена столбцов, а вторым уровнемэто то же самое, разделенное на "."
.
Как я могу выполнить итерацию этого списка, чтобы получить порядковый номер столбцов, начинающихся с одной и той же подстроки, и сгруппировать эти столбцы как элементы другого списка?