Я изучаю R.
Я собрал набор баз данных в одну.
Data <- smartbind(2014, 2015, 2016)
table(Data$year, useNA=c("always")
Я выбрал числовую переменную Data$x
и сгруппировал по числовому Data$year
следующим образом
a <- tapply(Data$x, Data$year, summary)
и, когда я использую print(a)
c(1, 10, 4, 15, ...)
c(29, 2, 3, 7, ...)
c(2, 7, 4, 8,...)
, результаты выглядят следующим образом. И эта форма массива не работает со следующим кодом для извлечения и суммирования информации изпервый и третий квартили и медиана
xdata <- as.data.frame(rbind(x2014 <- c(2014, a[["2014"]][["1st Qu."]],
a[["2014"]][["Median"]], a[["2014"]][["3rd Qu."]]),
x2015 <- c(2015, a["2015", "1st Qu."], a[["2015"]][["Median"]],
a[["2015"]][["3rd Qu."]]),
x2016 <- c(2016, a[["2016"]][["1st Qu."]], a[["2016"]][["Median"]],
a[["2016"]][["3rd Qu."]])`
colnames(losstroke) <- c("Year", "Q1", "Median", "Q3")
rm(a, x2014, x2015, x2016)`
как я могу это решить?Должен ли я преобразовать массив a
во фрейм данных?Как я мог это сделать?