수정 방법: ggplot2가 동일하지 않은 클래스 데이터를 처리하는 방법을 모릅니다.


R에서 발생할 수 있는 오류는 다음과 같습니다.

 Error: ggplot2 doesn't know how to deal with data of class uneval

이 오류는 일반적으로 ggplot2를 사용하여 두 개의 데이터 프레임을 한 번에 플롯하려고 하지만 geom_line() 함수에서 데이터 인수를 사용할 수 없을 때 발생합니다.

이 튜토리얼에서는 이 오류를 수정하는 방법을 정확하게 설명합니다.

오류를 재현하는 방법

R에 특정 시간과 다른 날짜에 발생한 판매량을 표시하는 두 개의 데이터 프레임이 있다고 가정해 보겠습니다.

 #create first data frame
df <- data. frame (date=c(1, 1, 1, 2, 2, 2, 3, 3, 3),
                 hour=c(1, 2, 3, 1, 2, 3, 1, 2, 3),
                 sales=c(2, 5, 7, 5, 8, 12, 10, 14, 13))

#view data frame
head(df)

  date hour sales
1 1 1 2
2 1 2 5
3 1 3 7
4 2 1 5
5 2 2 8
6 2 3 12

#create second data frame
df_new <- data. frame (date=c(4, 4, 4, 5, 5, 5),
                     hour=c(1, 2, 3, 1, 2, 3),
                     sales=c(12, 13, 19, 15, 18, 20))

#view data frame 
head(df_new)

  date hour sales
1 4 1 12
2 4 2 13
3 4 3 19
4 5 1 15
5 5 2 18
6 5 3 20

이제 첫 번째 데이터 프레임에 파란색을 사용하고 두 번째 데이터 프레임에 빨간색을 사용하여 일별 및 시간별로 그룹화된 매출을 시각화하는 꺾은선형 차트를 만들려고 한다고 가정해 보겠습니다.

 library (ggplot2)

#attempt to create line chart
ggplot(df, aes(x=hour, y=sales, group=date)) +
  geom_line(color=' blue ') +
  geom_line(df_new, aes(x=hour, y=sales, group=date), color=' red ')

Error: ggplot2 doesn't know how to deal with data of class uneval

두 번째 geom_line() 함수에서 데이터 인수를 사용하지 못했기 때문에 오류가 발생했습니다.

오류를 수정하는 방법

이 오류를 해결하는 방법은 단순히 두 번째 geom_line() 인수에 데이터를 입력하여 R이 우리가 플롯하려는 데이터 프레임을 알 수 있도록 하는 것입니다.

 library (ggplot2)

#create line chart
ggplot(df, aes(x=hour, y=sales, group=date)) +
  geom_line(color=' blue ') +
  geom_line(data=df_new, aes(x=hour, y=sales, group=date), color=' red ') 

이번에는 오류 없이 성공적으로 꺾은선형 차트를 만들 수 있습니다.

추가 리소스

다음 튜토리얼에서는 R의 다른 일반적인 오류를 해결하는 방법을 설명합니다.

R 수정 방법: as.Date.numeric(x)의 오류: “origin”을 제공해야 합니다.
해결 방법: Stripchart.default(x1, …)의 오류: 잘못된 플로팅 방법
해결 방법: 평가 오류(predvars, data, env): ‘x’ 개체를 찾을 수 없습니다.

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다