Size: a a a

R language and Statistical data analysis

2020 April 09

PU

Philipp Upravitelev in R language and Statistical data analysis
господа, тема интересная, но таки оффтоп, простите
источник

ЮМ

Юта Мата Ссс in R language and Statistical data analysis
Всем привет!
Подскажите пожалуйста, как можно от имени дата-фрейма, перейти к действию над ним.
Попробую объяснить:
У меня есть задача все df в сессии свести в один общий big_df.  Пока таблиц было немного я делал ручками:
bind_rows(pattern, df1) %>%
 bind_rows(df2) %>%
 bind_rows(df3)
Но  чувствую, что можно ведь красивее реализовать

Я получаю список всех доступных в сессии таблиц:
names(which(unlist(eapply(.GlobalEnv,is.data.frame))))
> "df1", "df2" ..... "df1000"

А дальше застрял, и не могу нагуглить, как же лучше свести всё в один. Потому что в функциях обращение идёт по имени df, а у меня только вектор со значениями.
Помогите пожалуйста, что хотя бы гуглить?
источник

PU

Philipp Upravitelev in R language and Statistical data analysis
get(), например
источник

ЮМ

Юта Мата Ссс in R language and Statistical data analysis
Philipp Upravitelev
get(), например
ох и ах, как всё просто
источник

ЮМ

Юта Мата Ссс in R language and Statistical data analysis
спасибо)
источник

EP

Ed P in R language and Statistical data analysis
Alexander Semenov
Мой товарищ в 2018 году влез. Собрал себе "голубых фишек" из американских IT контор. Осенью показывал в приложении Тинькова + ~ 40% за 2018 год и + ~ 24% за 2019.
2 года - не показатель. пусть сейчас покажет свои прибыли :)))

Хотя если он брал только голубые фишки только американских IT контор - то м.б. вошел в те 20% инвесторов, которые выжили после первого года-двух :)
источник

EP

Ed P in R language and Statistical data analysis
Philipp Upravitelev
господа, тема интересная, но таки оффтоп, простите
ссори!
источник

AS

Alexander Semenov in R language and Statistical data analysis
Alexey Burnakov
Видел мануалы про то, как классический портфель собрать, все есть! Результат только не гарантируется
Ну если они на R, то буду рад ссылкам.
источник

AB

Alexey Burnakov in R language and Statistical data analysis
Philipp Upravitelev
господа, тема интересная, но таки оффтоп, простите
Sorry
источник

PU

Philipp Upravitelev in R language and Statistical data analysis
Юта Мата Ссс
ох и ах, как всё просто
не усложняйте лишний раз
> library(data.table)
> tmp1 <- data.table(v1 = 'a', v2 = rnorm(3))
> tmp2 <- data.table(v1 = 'b', v2 = rnorm(3))
>
> dts <- lapply(ls(.GlobalEnv), get)
> dts <- dts[sapply(dts, is.data.table)]
> dts <- rbindlist(dts)
> dts
  v1         v2
1:  a -0.6423064
2:  a  0.4494392
3:  a  0.6426905
4:  b -0.8319686
5:  b -0.8922577
6:  b -1.2348411
источник

PU

Philipp Upravitelev in R language and Statistical data analysis
вообще, брать все таблицы и их склеивать - немного небезопасный путь
лучше бы их фильтровать еще по названию или еще как-нибудь
источник

ЮМ

Юта Мата Ссс in R language and Statistical data analysis
Philipp Upravitelev
вообще, брать все таблицы и их склеивать - немного небезопасный путь
лучше бы их фильтровать еще по названию или еще как-нибудь
Да, всё верно. Я намеренно упростил для примера.
У себя я их конечно же фильтрую, по паттерну в  названии.
Спасибо, через data.table выглядит проще, а то я в цикл всё запихнул

for (i in 1:length(list_of_df)) {
 data_set <- bind_rows(data_set, get(list_of_df[i]))
}
источник

PU

Philipp Upravitelev in R language and Statistical data analysis
в dplyr вроде есть аналог для склеивания нескольких таблиц
ну и в целом всегда есть do.call :)
источник

AS

Alexander Semenov in R language and Statistical data analysis
Philipp Upravitelev
в dplyr вроде есть аналог для склеивания нескольких таблиц
ну и в целом всегда есть do.call :)
Интересно, сколько ещё лет я проживу, не зная, что делает эта функция.
источник

PU

Philipp Upravitelev in R language and Statistical data analysis
эммм. справку прочитать совсем лень? :)
источник

PU

Philipp Upravitelev in R language and Statistical data analysis
> tmp1 <- data.table(v1 = 'a', v2 = rnorm(2))
> tmp2 <- data.table(v1 = 'b', v2 = rnorm(2))
>
> do.call(rbind, list(tmp1, tmp2))
  v1         v2
1:  a  0.7429222
2:  a -1.1124471
3:  b -1.1283464
4:  b  1.7150806
источник

PU

Philipp Upravitelev in R language and Statistical data analysis
например
источник

AS

Alexander Semenov in R language and Statistical data analysis
Ну у меня "карьера" работяги катится под откос и если уж будучи формально data scientist'ом я не дошёл до того, чтобы познать эту святая святых, то теперь-то и подавно не доведётся, поди.
источник

PU

Philipp Upravitelev in R language and Statistical data analysis
шо, в менеджера мутируешь? %)
источник

AS

Alexander Semenov in R language and Statistical data analysis
По полной программе. "Не умеешь работать головой — работай с людями". (с).
источник