lapply를 사용하여 목록에 저장된 단순 선형 회귀에 대한 요약 통계

Aveshen Pillay

y ~ x1, y ~ x2, y ~ x3 등의 일련의 간단한 선형 회귀가 있습니다.

모든 선형 회귀를 실행하고 출력을 저장할 수 있었지만 벡터화 된 방식으로 요약 통계에 액세스하는 데 문제가 있습니다 (예 : 각 모델에 대한 R 제곱 조정).

for 루프를 통해 할 수 있고 각 모델을 반복 할 수 있지만 lapply (또는 sapply?)를 사용하고 결과를 더 빨리 얻을 수있는 더 쉬운 방법이 있어야한다고 생각합니다.

재현 가능한 예는 다음과 같습니다.

library(tidyverse)
library(broom)

set.seed(6)

DF <- data.frame(Y=rnorm(50, 100, 3),
                 X1=rnorm(50, 100, 3),
                 X2=rnorm(50, 100, 3),
                 X3=rnorm(50, 100, 3),
                 X4=rnorm(50, 100, 3))

DF_longer = pivot_longer(DF, -Y, names_to = "variable", values_to = "value", values_ptypes = list(val = 'numeric'))

lm1 = DF_longer %>% group_by(variable) %>% do(tidy(lm(Y ~ value, data=.)))
lm2 = DF_longer %>% group_by(variable) %>% do(mod = lm(Y ~ value, data=.))

최적화하고 싶은 부분은 다음과 같이 각 모델에 대해 조정 된 R 제곱을 for 루프가없는 벡터에 저장하려는 것입니다.

lm2_data = summary(lm2$mod[[1]])
lm2_data$adj.r.squared

lm2_data = summary(lm2$mod[[2]])
lm2_data$adj.r.squared

lm2_data = summary(lm2$mod[[3]])
lm2_data$adj.r.squared

lm2_data = summary(lm2$mod[[4]])
lm2_data$adj.r.squared
렌 그레 스키

다음은 mtcars데이터 를 사용하는 예입니다 .

regModels <- c("mpg ~ am", "mpg ~ am + wt", "mpg ~ wt + am + disp")

results <- lapply(regModels,function(x){
     y <- summary(lm(x,data = mtcars))$adj.r.squared

})

names(results) <- regModels

results

... 그리고 출력 :

> results
$`mpg ~ am`
[1] 0.3384589

$`mpg ~ am + wt`
[1] 0.7357889

$`mpg ~ wt + am + disp`
[1] 0.757583

> 

원본 게시물의 데이터 사용 ...

library(tidyverse)
library(broom)
set.seed(6)

DF <- data.frame(Y=rnorm(50, 100, 3),
                 X1=rnorm(50, 100, 3),
                 X2=rnorm(50, 100, 3),
                 X3=rnorm(50, 100, 3),
                 X4=rnorm(50, 100, 3))

DF_longer = pivot_longer(DF, -Y, names_to = "variable", values_to = "value", values_ptypes = list(val = 'numeric'))

lm1 = DF_longer %>% group_by(variable) %>% do(tidy(lm(Y ~ value, data=.)))
lm2 = DF_longer %>% group_by(variable) %>% do(mod = lm(Y ~ value, data=.))

adjRsquared <- lapply(lm2$mod,function(x){
     y <- summary(x)$adj.r.squared
})
names(adjRsquared) <- lm2$variable
adjRsquared

... 그리고 출력 :

> adjRsquared
$X1
[1] -0.007637371

$X2
[1] 0.007729944

$X3
[1] 0.04993542

$X4
[1] -0.02026235

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

R을 사용하여 각 회귀 계수 (1104 선형 회귀)에 대한 p- 값 목록 추출

분류에서Dev

요약 통계를 얻기위한 SNP 목록에 대한 R의 로지스틱 회귀

분류에서Dev

특성에 대한 고정 계수를 사용하는 다중 선형 회귀

분류에서Dev

Python : 여러 회귀에서 추정 된 계수를 단일 행렬에 저장

분류에서Dev

목록의 각 항목에 대한 특정 요약 통계를 기록하는 방법은 무엇입니까?

분류에서Dev

단일 순회를 사용하여 연결된 목록에서 이진 등가물을 계산합니까?

분류에서Dev

group_by ()를 사용하여 dplyr로 데이터 프레임에 대한 요약 통계 계산

분류에서Dev

Julia의 그룹화 된 열에 대한 여러 요약 통계

분류에서Dev

R의 중첩 된 목록에 대한 효율적인 요약 통계

분류에서Dev

변동성에 대한 오차 막대를 사용하여 선형 회귀 분석 플로팅

분류에서Dev

선형 회귀 용으로 작성한 코드를 약간 변경하여 곡선 피팅에 대한 2 차 다항식 얻기

분류에서Dev

R의 선형 회귀 : 변수에 대한 잘못된 유형 (목록)?

분류에서Dev

PHP를 사용하여 파일에 저장된 방대한 단어 목록을 검색하는 가장 빠른 방법

분류에서Dev

선형 회귀에서 계수에 대한 NA를 얻는 이유가 확실하지 않습니다.

분류에서Dev

rms를 사용하여 로지스틱 회귀에 대한 OR 계산

분류에서Dev

계정에 다른 사용자의 Outlook 일정에 약속을 저장하는 동안 요청 된 사용자를 가장 할 권한이 없습니다.

분류에서Dev

r에서 여러 단계적 선형 회귀 모델 실행

분류에서Dev

jquery를 사용하여 html의 다중 선택 목록 상자에서 선택한 항목 수를 계산하고 해당 수를 hiddenfield에 저장

분류에서Dev

사용자 정의 함수 목록에 대한 요약 목록 형식

분류에서Dev

하위 목록의 단순 목록에 대한 목록 이해력 확장

분류에서Dev

파워 쿼리에서 R 변환 단계를 사용하여 선형 회귀 모델 매개 변수를 가져 오는 방법

분류에서Dev

R에서 여러 종속 및 독립 변수를 사용한 선형 회귀

분류에서Dev

R caret에서 선형 회귀 (lm)를 사용하여 어떻게 0을 통해 절편을 강요합니까?

분류에서Dev

사용자 선택에 따라 여러 요약 통계 표시

분류에서Dev

scikit-learn을 사용하여 Python에서 간단한 선형 회귀의 절편과 기울기를 인쇄하는 방법은 무엇입니까?

분류에서Dev

목록에 저장된 행렬을 통한 루프 사용

분류에서Dev

Pytorch를 사용한 선형 회귀에서 손실이 감소하지 않음

분류에서Dev

연간 분산 시계열 데이터에 선형 회귀를 사용하여 -N- 년 후 예측 얻기

분류에서Dev

여러 열에서 요약 통계를 계산하기위한 R Data.table

Related 관련 기사

  1. 1

    R을 사용하여 각 회귀 계수 (1104 선형 회귀)에 대한 p- 값 목록 추출

  2. 2

    요약 통계를 얻기위한 SNP 목록에 대한 R의 로지스틱 회귀

  3. 3

    특성에 대한 고정 계수를 사용하는 다중 선형 회귀

  4. 4

    Python : 여러 회귀에서 추정 된 계수를 단일 행렬에 저장

  5. 5

    목록의 각 항목에 대한 특정 요약 통계를 기록하는 방법은 무엇입니까?

  6. 6

    단일 순회를 사용하여 연결된 목록에서 이진 등가물을 계산합니까?

  7. 7

    group_by ()를 사용하여 dplyr로 데이터 프레임에 대한 요약 통계 계산

  8. 8

    Julia의 그룹화 된 열에 대한 여러 요약 통계

  9. 9

    R의 중첩 된 목록에 대한 효율적인 요약 통계

  10. 10

    변동성에 대한 오차 막대를 사용하여 선형 회귀 분석 플로팅

  11. 11

    선형 회귀 용으로 작성한 코드를 약간 변경하여 곡선 피팅에 대한 2 차 다항식 얻기

  12. 12

    R의 선형 회귀 : 변수에 대한 잘못된 유형 (목록)?

  13. 13

    PHP를 사용하여 파일에 저장된 방대한 단어 목록을 검색하는 가장 빠른 방법

  14. 14

    선형 회귀에서 계수에 대한 NA를 얻는 이유가 확실하지 않습니다.

  15. 15

    rms를 사용하여 로지스틱 회귀에 대한 OR 계산

  16. 16

    계정에 다른 사용자의 Outlook 일정에 약속을 저장하는 동안 요청 된 사용자를 가장 할 권한이 없습니다.

  17. 17

    r에서 여러 단계적 선형 회귀 모델 실행

  18. 18

    jquery를 사용하여 html의 다중 선택 목록 상자에서 선택한 항목 수를 계산하고 해당 수를 hiddenfield에 저장

  19. 19

    사용자 정의 함수 목록에 대한 요약 목록 형식

  20. 20

    하위 목록의 단순 목록에 대한 목록 이해력 확장

  21. 21

    파워 쿼리에서 R 변환 단계를 사용하여 선형 회귀 모델 매개 변수를 가져 오는 방법

  22. 22

    R에서 여러 종속 및 독립 변수를 사용한 선형 회귀

  23. 23

    R caret에서 선형 회귀 (lm)를 사용하여 어떻게 0을 통해 절편을 강요합니까?

  24. 24

    사용자 선택에 따라 여러 요약 통계 표시

  25. 25

    scikit-learn을 사용하여 Python에서 간단한 선형 회귀의 절편과 기울기를 인쇄하는 방법은 무엇입니까?

  26. 26

    목록에 저장된 행렬을 통한 루프 사용

  27. 27

    Pytorch를 사용한 선형 회귀에서 손실이 감소하지 않음

  28. 28

    연간 분산 시계열 데이터에 선형 회귀를 사용하여 -N- 년 후 예측 얻기

  29. 29

    여러 열에서 요약 통계를 계산하기위한 R Data.table

뜨겁다태그

보관