2016-01-18 5 views
0

формата Я имеющих порядок неприятности и построение графиков линий с моим следующим dataframe: enter image description hereR - Заказ и земля с длинными данными

Я мог бы передать всю базу данных, но она имеет 1152. Дело в том, что в длинном формате и с идентификатором «Id», который повторяется для каждого типа (я подозреваю, что это вызывает путаницу).

Я пытаюсь сделать линию ggplot, но это дает мне:

ggplot(data=plotDFdataLong, 
       aes(x=Id, y=Stat, colour=Types, group=Types)) + 
      geom_line() 

enter image description here

Кроме того, когда я пытаюсь сделать заказ:

plotDFdataLong <- plotDFdataLong[order(plotDFdataLong$Id, 
             plotDFdataLong$Types),] 

я получаю:

Error in xj[i, , drop = FALSE] : subscript out of bounds 

A Подсказки? Спасибо!

+2

Можете ли вы сделать свой пример воспроизводимым или, возможно, предоставить фиктивные данные, такие как 'df <- data.frame (id = rep (1:10, 10), type = rep (paste0 (" T ", 1: 10), каждый = 10), stat = rnorm (100)) ' – JasonAizkalns

+1

проверить, является ли' Типы' фактором – mtoto

+0

Да, 'Типы' являются фактором. – user191919

ответ

1

Проблема была с datatypes. Первоначально они были:

 Id  Types  Stat 
"numeric" "factor" "matrix" 

Фиктивная dataframe ниже работает отлично:

data.frame(id = rep(1:10, 10), type = rep(paste0("T", 1:10), each = 10), stat = rnorm(100)) 

который имел следующий класс:

sapply(df,class) 
     id  type  stat 
"integer" "factor" "numeric" 

Так что это просто вопрос о преобразовании данных в класс выше.

Смежные вопросы