2012-09-13 3 views
1

행렬에서 데이터가 필요한 바 plot을 만들려고합니다. 나는 정말 멋진 플롯 내 행렬은 다음과 같이 보았을 때 이전에 만든 :행렬에서 색인 생성 제거 R

내 데이터의 나머지 부분
 0% 20% 40% 60% 80% 
C2 0.22 0.94 1.66 2.38 3.10 
CC -1.38 -0.66 0.06 0.79 1.51 
CCW -1.61 -0.87 -0.13 0.62 1.36 
P -1.13 -0.16 0.81 1.78 2.76 
PF 0.03 0.72 1.42 2.11 2.80 
S2 -2.34 -1.61 -0.88 -0.16 0.57 

, 내가 as.matrix (DF)를 사용하여 않은 dataframe에서 변환했다. 이 행렬은 다음과 같습니다.

 trt 2009  2010  2011  
[1,] "C2" "9.0525" " 8.1400" " 8.1400" 
[2,] "CC" "5.4200" " 4.7975" " 4.7975" 
[3,] "CCW" "4.9675" " 4.0400" " 4.0400" 
[4,] "P" "9.3150" "10.3500" "10.3500" 
[5,] "PF" "9.0950" " 3.3375" " 3.3375" 
[6,] "S2" "3.1725" " 3.1125" " 3.1125" 

바 plot 기능과 함께 작동하지 않습니다. 색인 열을 제거해야하지만 그렇게 할 수는 없다고 생각합니다. 따옴표는 무엇입니까? 행렬이 행렬 이었지만 여기에서 무슨 일이 일어나고 있는지 확신 할 수 없습니다.

+0

'as.matrix (yourdata [, - 1])'. 첫 번째 열은 숫자가 아닌 (문자 또는 요소)이며 행렬의 열은 모두 동일한 유형이어야하므로 'as.matrix'는 모든 데이터를 문자로 강제 변환합니다. –

답변

2

따옴표는 matrix이 모드 character임을 의미합니다. 이는 표면적으로 유사한 data.frame과 대조적으로 matrix이 하나의 유형 만 보유 할 수 있기 때문입니다. 영숫자 문자는 숫자로 변환 할 수 없기 때문에 행렬은 character 모드입니다. 먼저 matrix으로 변환하기 전에 첫 번째 열을 제거하고 행렬을 numeric으로 변환하지 않아도됩니다.

m <- as.matrix(df[, -1]) 

#To add the row.names. 

row.names(m) <- df[, 1] 
+0

고마워, 루치아노! 그것은 의미가 있으며 당신의 수정은 매력처럼 작동합니다. – Nazer