패키지 reldist에서 gini() 함수를 사용하지 않고 R을 사용하여 여러 개의 그림의 지니 계수를 계산하고 싶습니다. gini 함수의 입력으로 두 개의 열을 사용해야하는 데이터 프레임이 있습니다.하나 대신 두 개의 열에 tapply 사용
> head(merged[,c(1,17,29)])
idp c13 w
1 19 126 14.14
2 19 146 14.14
3 19 76 39.29
4 19 74 39.29
5 19 86 39.29
6 19 93 39.29
지니 기능은 계산을 위해 첫 번째 요소를 사용한다 (여기서 C13) 및 제 소자 (C13)의 각 요소에 대응 (여기서는 W) 가중치이다.
그래서 나는이 같은 열 C13 및 승을 사용할 필요가 :
gini(merged$c13,merged$w)
[1] 0.2959369
것은 내가 각각의 플롯 (IDP)이 작업을 수행 할 수 있습니다. 나는 4 개의 수천 개의 다른 idp 값과 각각 다른 두 개의 열 값을 가지고있다.
나는 이것을 tapply() 함수를 사용하여 할 수 있다고 생각했다. 하지만 tapply를 사용하여 함수에 두 개의 열을 넣을 수는 없습니다.
tapply(list(merged$c13,merged$w), merged$idp, gini)
알고 계신 것 같습니다. 그래서 나는 결과이 같은 데이터 프레임으로 얻을 싶어요 :
idp Gini
1 19 0.12
2 21 0.45
3 35 0.65
4 65 0.23
는이 작업을 수행하는 방법에 대한 어떤 생각을 가지고 있습니까이? 아마도 플라이 패키지일까요? 도움을 주셔서 감사합니다.
감사합니다. 필자는이 plyr 패키지를 사용해야합니다. 흥미로운 기능들로 가득 찬 것 같습니다. – Tom