2016-10-06 1 views
0

여기에 질문하는 것을 처음 접하고이 테이블을 올바르게 입력하는 방법을 모르므로 미리 죄송합니다. 나는 나에게 내가 매트릭스 m를 입력이 작업을 수행 할 수 있다고 생각 팀 A, B, and C.의 값을 그래프 3 개 라인을 줄 것이다 플롯을 만들특정 열이 변경 될 때마다 R에서 matplot 사용

team = c("A", "A", "A", "B", "B", "B", "C", "C", "C") 

value = c(1, 2, 3, 4, 5, 6, 7, 8, 9) 

m = cbind(team, value) 

:

처럼 나는 R의 데이터 프레임 구성이 말 어떻게 든 어쨌든 matplot에 들어가지만, 나는 잘 모릅니다.

편집 : 내 문제를 해결하는 데 더 가까워졌습니다. 그러나 내가 가진 코드로 어떤 이유로 든 "Value"는 데이터 프레임 m의 행 수와 일치하는 745의 목록입니다. 그러나 내가 unlist (Value) 할 때 길이가 894 인 숫자로 바뀝니다. 왜 이것이 일어날 지에 대한 아이디어가 있습니까?

+0

무엇을 이미 시도 했습니까? – DimaSan

답변

0

당신은 이런 식으로 뭔가를 시도 할 수 있습니다 : 당신이 각 팀에 대한 지시 값의 같은 번호가있는 경우, 당신이 그들을 시각화 matplot를 사용할 수

team = c("A", "A", "A", "B", "B", "B", "C", "C", "C") 
value = c(1, 2, 3, 4, 5, 6, 7, 8, 9) 
m = cbind.data.frame(team, value) 
library(ggplot2) 
ggplot(m, aes(x=as.factor(1:nrow(m)), y=value, group=team, col=team)) + 
    geom_line(lwd=2) + xlab('index') 

enter image description here

+0

이 오류가 발생했습니다 : 목록 유형의 개체에 자동으로 축척을 지정하는 방법을 모르십시오. 연속으로 기본값. (function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE, : ) 인수가 다른 행 수를 암시합니다 : 1, 26, 0 – Jake

+0

동일한 데이터 세트를 사용하고 있습니까? 정확히 어디서 오류가 발생 했습니까? –

+0

아니요, 더 큰 데이터 집합을 사용하고 있지만 같은 유형의 문제가 있습니다. 내 데이터 집합에는 ~ 20 개의 다른 팀이있는 745 개의 행이 있고 같은 그래프에 넣고 싶습니다. – Jake

0

. 데이터는 먼저 행렬로 변환되어야합니다.

m = cbind.data.frame(team, value, index = rep(1:3, 3)) 

m <- reshape(m, v.names = 'value', idvar = 'team', direction = 'wide', timevar = 'index') 

matplot(t(m[, 2:4]), type = 'l', lty = 1) 
legend('top', legend = m[, 1], lty = 1, col = 1:3) 
+0

사용하려는 데이터의 각 팀에 대해 실제로 정렬 된 값 수가 없습니다. – Jake