나는 내가 ggplot을 준비하고있어 데이터 프레임과 같이 찾고 있습니다변수의 값의 합계와 다른 변수의 레벨을 기반으로 변수의 수준을 정렬하는 방법은 무엇입니까?
txt <- "v1 v2 v3
'Strongly agree' 83.1 var1
'Agree' 14.9 var1
'Disagree' 1.5 var1
'Strongly disagree' 0.6 var1
'Strongly agree' 11.8 var2
'Agree' 36.5 var2
'Disagree' 17.7 var2
'Strongly disagree' 43.8 var2
'Strongly agree' 19.6 var3
'Agree' 12 var3
'Disagree' 31.6 var3
'Strongly disagree' 36.8 var3"
mydata <- read.table(textConnection(txt), sep = " ", header = TRUE)
내 질문은 : 어떻게 mydta$v2
의 값과 mydata$v1
의 수준 모두를 기반으로 mydata$v3
의 수준을 주문하려면?
예 : 예를 들어 나는 수준 mydata$v1
에 '매우 동의'내 mydata$v2
에서 가장 높은 값을 기준으로 mydata$v3
의 수준을 주문하려는 경우 내가 얻을 것 순서는 다음과 같습니다 때문에 var1
, var3
, var2
mydata$v2
의 값은 83.1, 19.6, 11.8입니다.
또 다른 예 : 예를 들어 내가 '전적으로 동의'내가 얻을 것이 순서 일 것 mydata$v1
에 '동의'수준에서 mydata$v2
에서 값의 합을 기준으로 mydata$v3
의 수준을 주문하려는 경우 : var1
를, mydata$v2
의 값이 (83.1 + 14.9) = 98 (11.8 + 36.5) = 48.3 (+ 12 19.6) =
31.6입니다 var2
, var3
때문에 어떻게 자신이 접근하는 아무 생각이 없습니다. 두 예에서
, 내가 갈거야 결과 원래 data.frame은 다음과 같습니다 또한, 나는
편집 함수로 가야이 너무 코드와 같은 프레임을 많이 처리 mydata $ v3의 수준 만 변경되었습니다.
그래서 예 1에서 내가 가진 : v1 v2 v3
1 Strongly agree 83.1 var1
2 Agree 14.9 var1
3 Disagree 1.5 var1
4 Strongly disagree 0.6 var1
5 Strongly agree 11.8 var2
6 Agree 36.5 var2
7 Disagree 17.7 var2
8 Strongly disagree 43.8 var2
9 Strongly agree 19.6 var3
10 Agree 12.0 var3
11 Disagree 31.6 var3
12 Strongly disagree 36.8 var3
levels(mydata$v3)
[1] "var1" "var2" "var3"
하지만 내가 함께 종료 할 것은 이것이다.
v1 v2 v3
1 Strongly agree 83.1 var1
2 Agree 14.9 var1
3 Disagree 1.5 var1
4 Strongly disagree 0.6 var1
5 Strongly agree 11.8 var2
6 Agree 36.5 var2
7 Disagree 17.7 var2
8 Strongly disagree 43.8 var2
9 Strongly agree 19.6 var3
10 Agree 12.0 var3
11 Disagree 31.6 var3
12 Strongly disagree 36.8 var3
levels(mydata$v3)
[1] "var1" "var2" "var3"
을하지만 원하는 : 예를 두 가지에서
v1 v2 v3
1 Strongly agree 83.1 var1
2 Agree 14.9 var1
3 Disagree 1.5 var1
4 Strongly disagree 0.6 var1
5 Strongly agree 11.8 var2
6 Agree 36.5 var2
7 Disagree 17.7 var2
8 Strongly disagree 43.8 var2
9 Strongly agree 19.6 var3
10 Agree 12.0 var3
11 Disagree 31.6 var3
12 Strongly disagree 36.8 var3
levels(mydata$v3)
[1] "var1" "var3" "var2"
내가 가진
v1 v2 v3
1 Strongly agree 83.1 var1
2 Agree 14.9 var1
3 Disagree 1.5 var1
4 Strongly disagree 0.6 var1
5 Strongly agree 11.8 var2
6 Agree 36.5 var2
7 Disagree 17.7 var2
8 Strongly disagree 43.8 var2
9 Strongly agree 19.6 var3
10 Agree 12.0 var3
11 Disagree 31.6 var3
12 Strongly disagree 36.8 var3
levels(mydata$v3)
[1] "var1" "var2" "var3"
공지 사항, 즉 예를 들어 내가 가진 무엇을 내가 원하는 것은 동일하지만 나는이 것을 두에 이것이 사실이 아닌 많은 데이터. 프레임. 내가 생각 무엇을 찾고 있어요
는 여기 aggregate
있는 솔루션이다
factor(maydata$v3, levels(mydata$v3)[EXAMPLE1: order after value in v2 within 1 level in v1 /EXAMPLE2: order after sum of value within 2 levels in v1])
어떤 요소 내에서 수준을 정할 수 있습니까? –
예 레벨 mydata $ v3 내의 레벨을 주문해야합니다. – Einnor
죄송합니다. 약간의 질문이있는 경우 미심쩍어합니다. – Einnor