Size: a a a

R (язык программирования)

2021 March 20

A

Andrey in R (язык программирования)
для двух наборов переменных придется два раза aggregate() вызывать
источник

A

Andrey in R (язык программирования)
хотя если переменных так мало, как в ирисах, то проще вручную для каждой задать нужную функцию
источник

DK

Dm Kb in R (язык программирования)
Snow time
Я пока нашел функцию, которая агрегирует с одинаковым действием для всех столбцов
data(iris)   
aggregate(x = iris[ , ! colnames(iris) %in% "Species"],              
         by = list(iris$Species),              # Specify group indicator
         FUN = sum)
можно и автоматизировать процесс, но проще столбцы выбирать ручками

library(dplyr)
bind_cols(
 summarise(iris, across(1:2, sum, .names = "{.col}_sum")),
 summarise(iris, across(3:4, mean, .names = "{.col}_mean"))
 )
источник

St

Snow time in R (язык программирования)
Dm Kb
можно и автоматизировать процесс, но проще столбцы выбирать ручками

library(dplyr)
bind_cols(
 summarise(iris, across(1:2, sum, .names = "{.col}_sum")),
 summarise(iris, across(3:4, mean, .names = "{.col}_mean"))
 )
А как здесь можно оставить столбец с показателями?
источник

St

Snow time in R (язык программирования)
разобрался
источник

St

Snow time in R (язык программирования)
Спасибо!
источник

St

Snow time in R (язык программирования)
Хотя нет, что-то не то получилось))
источник

DK

Dm Kb in R (язык программирования)
Snow time
А как здесь можно оставить столбец с показателями?
если речь про группировку, то так:
library(dplyr)

iris_grp <- group_by(iris, Species)
bind_cols(
 summarise(iris_grp, across(1:2, sum, .names = "{.col}_sum")),
 summarise(iris_grp, across(3:4, mean, .names = "{.col}_mean"))
)
источник

St

Snow time in R (язык программирования)
Единственный минус - дублируются столбцы с показателями
источник

St

Snow time in R (язык программирования)
Можно это как-то исправить в текущей функции?
источник

DK

Dm Kb in R (язык программирования)
просто убрать столбец:
iris_grp <- group_by(iris, Species)
bind_cols(
 summarise(iris_grp, across(1:2, sum, .names = "{.col}_sum")),
 summarise(iris_grp, across(3:4, mean, .names = "{.col}_mean"))[, -1]
)
источник

PU

Philipp Upravitelev in R (язык программирования)
а что, дашборд по пакетам сломался?
https://jjallaire.shinyapps.io/shiny-crandash
источник

PU

Philipp Upravitelev in R (язык программирования)
может, кто знает другие какие интересные открытые дашборды? студентам для примера показать хочу
источник
2021 March 21

ЮМ

Юта Мата Ссс... in R (язык программирования)
Philipp Upravitelev
может, кто знает другие какие интересные открытые дашборды? студентам для примера показать хочу
Да взять хотя бы прошлогодний контест:
https://blog.rstudio.com/2020/07/13/winners-of-the-2nd-shiny-contest/

и в галерее на офф сайте полно всякого:
https://shiny.rstudio.com/gallery/

Или хочется прям совсем чего-то особенного?
источник

PU

Philipp Upravitelev in R (язык программирования)
да не, этого хватит, спасибо
источник

ЕТ

Евгений Томилов... in R (язык программирования)
Я не применял логистическую регрессию примерно сто лет и всё забыл, помогите заново разобраться, пожалуйста. Вот, я делаю glm(depend_var ~ ., family = binomial(link = "logit"), data = all_data)

У одного из значимых бинарных категориальных предикторов получается коэффициент -1.6740. Скажем, этот коэффициент у предиктора "камень: сухой", а целевая переменная "идёт ли дождь". Как мне теперь его проинтерпретировать от шансов до вероятности?

Верно ли я понимаю, что я делаю так: exp(-1.6740) / (1 + exp(-1.6740)) = 0.1578916. Получается, в случае, если у меня сухой камень, то... вероятность того, что идёт дождь, снижается на 0.15?

Не совсем понимаю, то есть, отрицательный коэффициент снижает вероятность получения положительного отклика.  Но как осмысленно интерпретировать именно в терминах вероятности?
источник

М

Марк in R (язык программирования)
Евгений Томилов
Я не применял логистическую регрессию примерно сто лет и всё забыл, помогите заново разобраться, пожалуйста. Вот, я делаю glm(depend_var ~ ., family = binomial(link = "logit"), data = all_data)

У одного из значимых бинарных категориальных предикторов получается коэффициент -1.6740. Скажем, этот коэффициент у предиктора "камень: сухой", а целевая переменная "идёт ли дождь". Как мне теперь его проинтерпретировать от шансов до вероятности?

Верно ли я понимаю, что я делаю так: exp(-1.6740) / (1 + exp(-1.6740)) = 0.1578916. Получается, в случае, если у меня сухой камень, то... вероятность того, что идёт дождь, снижается на 0.15?

Не совсем понимаю, то есть, отрицательный коэффициент снижает вероятность получения положительного отклика.  Но как осмысленно интерпретировать именно в терминах вероятности?
У Демешева в курсе было, как переходить от шансов к вероятностям
источник

a

aGricolaMZ in R (язык программирования)
Евгений Томилов
Я не применял логистическую регрессию примерно сто лет и всё забыл, помогите заново разобраться, пожалуйста. Вот, я делаю glm(depend_var ~ ., family = binomial(link = "logit"), data = all_data)

У одного из значимых бинарных категориальных предикторов получается коэффициент -1.6740. Скажем, этот коэффициент у предиктора "камень: сухой", а целевая переменная "идёт ли дождь". Как мне теперь его проинтерпретировать от шансов до вероятности?

Верно ли я понимаю, что я делаю так: exp(-1.6740) / (1 + exp(-1.6740)) = 0.1578916. Получается, в случае, если у меня сухой камень, то... вероятность того, что идёт дождь, снижается на 0.15?

Не совсем понимаю, то есть, отрицательный коэффициент снижает вероятность получения положительного отклика.  Но как осмысленно интерпретировать именно в терминах вероятности?
так вроде все правильно, только "камень сухой" — это одно из значений дамми переменных. Так что нужно знать, чего там в интерсепте. -0.15 разница между тем, что в интерсепте и сухим камнем. Но вообще, я полюбил ggeffects, оно все сразу понятно рисует, если переменных не очень много.
источник

ЕТ

Евгений Томилов... in R (язык программирования)
aGricolaMZ
так вроде все правильно, только "камень сухой" — это одно из значений дамми переменных. Так что нужно знать, чего там в интерсепте. -0.15 разница между тем, что в интерсепте и сухим камнем. Но вообще, я полюбил ggeffects, оно все сразу понятно рисует, если переменных не очень много.
Спасибо! Да, про разницу я понял.
источник

Е

Егор in R (язык программирования)
Всем привет, подскажите как мне в фрейме выбрать все данные с определенным значением? Мне нужно заменить строковые значения в одной из колонок на индексы этих значений. Типо было

1 A
2 B
3 B
4 C

А должно стать
1 1
2 2
3 2
4 3

Пытаюсь вот так
for (i in seq_len(ncol(dataset))) {
       if (is.character(dataset[, i])) {
           data_frame <- data.frame(dataset[, i])
           for (col in seq_len(ncol(data_frame))) {
               data_frame[data_frame[col]] <- col;
           }
           return;
       }
   }

Но мне ругается
FUN(X[[i]], ...) :
 only defined on a data frame with all numeric variables
источник