2014-01-22 15 views
1

2 개의 변수가있는 R의 데이터 프레임이 있습니다. 신장, 체중] 저는 몇 가지 다른 공변량 (예 : 성별, 민족성)과 함께 상관 관계를 계산하고 싶습니다.리스트에서 이름을 추출하는 방법 R

나는 성별과 민족의 각 그룹별로 신장 대 체중의 R^2 값을 계산하고 싶습니다. 예 : 내가 명령 "에 의해"파악

등 남성 & 백인, 여성 & 백인, 남성 & 아시아 인, 여성 & 백인에 대한 체중 대 신장 R^2는이 일에 도움이 될 것입니다.

R2_value 섹스 인종

내 질문 :

cor <- by(data[,c(6,7)],list(data$sex,data$ethnicity),cor) 

> cor 
: Female 
: African American 
      wt  ht 
wt 1.0000000 0.6879572 
ht 0.6879572 1.0000000 
------------------------------------------------------------------------------------------------------------------------------------------------ 
: Male 
: African American 
      wt  ht 
wt 1.0000000 0.6868178 
ht 0.6868178 1.0000000 
------------------------------------------------------------------------------------------------------------------------------------------------ 
: Female 
: Hispanic 
      wt  ht 
wt 1.0000000 0.6162962 
ht 0.6162962 1.0000000 
------------------------------------------------------------------------------------------------------------------------------------------------ 
: Male 
: Hispanic 
      wt  ht 
wt 1.0000000 0.5854748 
ht 0.5854748 1.0000000 

내 질문에 나는 다음과 같은 열이있는 데이터 프레임에, 목록 형태로되어 이러한 결과를 변환하고 싶습니다이다 어떻게하면 성 및 민족의 가치를 "cor"("by"명령의 결과) 목록에서 끌어낼 수 있을까요?

"cor [[1]]"을 수행 할 때 Female, African American의 상관 행렬을 얻습니다.

"이름 (cor)"을 부르는 것도 내가 원하는 것을주지 않습니다.

+0

당신은 plyr 패키지에서'ldply'를 봐야합니다. 목록을 받아서 data.frame을 반환합니다. – John

+1

에는'dput()'을 사용하여 데이터 집합의 하위 집합이 포함되거나 재현 가능한 예제가 제공됩니다. – marbel

+1

마틴의 말은. 또한 상관 행렬로부터 R^2를 계산하는 것을 포함하는 정답을 기대하십니까? –

답변

0

이 문제를 해결하기위한 첫 번째 시도입니다. 원래 데이터를 가지고있는 방법을 표현하지 않았기 때문에 결과가 작동하는지 잘 모르겠습니다. 코드를 사용해보고 결과를보고하십시오!

set.seed(123) 
# Coerce your data.frame to a data.table 
require("data.table") 
DT <- data.table(data) 
DT <- data.table(wt = rnorm(100, 80, 10), 
       ht = rnorm(100, 110, 10), 
       sex = factor(sample(c("MALE", "FEMALE"), 100, replace = T)), 
       ethnicity = factor(sample(c("African American", "Hispanic"), 100, replace = T)) 
       ) 

str(DT) 

DT[, cor(wt,ht), by="sex,ethnicity"] 
관련 문제