Я экспериментирую с функцией квантиля в независимых фреймах данных.
Очень простой пример для иллюстрации моего случая:
получить квартили
quantile(x <- rnorm(1001))
0% 25% 50% 75% 100%
-2.930587810 -0.687108751 0.004405246 0.644589258 2.839597566
#subdivide quantile results in 5 independent results (data frames) For example:
list2env(setNames(as.list(quantile(x <- rnorm(1001))),paste0("Q",1:5)),.GlobalEnv)
Итак, теперьв новом столбце, который я имею рядом с результатами квартильных данных, сгруппированными в соответствующие квартильные числа Q0, Q1, Q2, Q3, Q4.
Теперь я хотел бы применить то же самое к «Большому списку»(large_list) с более чем 400 элементами на нем, так что я думаю, мне нужен другой подход к нему (функция), чтобы применить его глобально к 400 элементам моего списка.
Здесь мне нужна помощьсообщества, это мой подход:
#Read all elements of the list in the environment,create a new column to be named,
# Elementname.Quartilenumber that contains which
# Q (0,1,2,3,4) number the data belongs to.
Qnumber <- function(x) {
element_name <- stringi::stri_extract(names(x)[1], regex = "^[A-Z]+")
element_name <- paste0(element_name, ".Quartilenumber")
column_names <- c(names(x), stock_name)
x$quartile <- quantile(large_list$.)
x <- setNames(x, column_names)
return(x)
Любая помощь будет очень ценится.
Большое спасибо.