2017-12-17 10 views
0

나는 이해할 수없는 문제를 발견했다. 누군가가 설명을 가리킬 수 있습니까?ggplot에서 변수를 올바르게 사용하는 방법은 무엇입니까?

ggplot에서 변수 이름에 "$"를 사용하면 다른 결과가 나타납니다. 이 당신의 행동의 원인이 무엇 인 경우 잘 모르겠어요

library(ggplot2) 
df <- read.csv("pseudo_facebook.tsv", sep = '\t') 

# Without $ sign 
ggplot(data = df, aes(x = friend_count)) + geom_histogram(binwidth = 25) + 
    scale_x_continuous(limits = c(1, 1000), breaks = seq(0, 1000, 25)) + 
    facet_grid(~df$gender) 

Without $ in the variable name

# With $ sign 
ggplot(data = df, aes(x = df$friend_count)) + geom_histogram(binwidth = 25) + 
    scale_x_continuous(limits = c(1, 1000), breaks = seq(0, 1000, 25)) + 
    facet_grid(~df$gender) 

enter image description here

+0

테스트 할 수 reprex을해야합니다. 'dput (df)'를 실행하고 출력을 질문에 복사하십시오 (데이터 세트가 너무 크지 않다면). –

+2

간단한 설명은 aes() 안쪽에'$'를 사용하지 마라. 그냥하지 마! 그건 잘못 됐어! ;) – joran

+0

안녕하세요, 이것은 데이터에 사용 된 파일입니다. https://github.com/staceynlee/Pseudo-Facebook-Data-Udacity/blob/master/pseudo_facebook%20(1).tsv –

답변

0

, 아래의 예를 참조하십시오,하지만 첫 번째 예를 들어, 당신은 여전히 ​​df$이 공식 : facet_grid. 노출 된 컬럼 이름을 데이터 프레임으로 지정된 컬럼 이름과 혼용 할 경우, 부적절한 평가 문제가 발생할 수 있습니다. 당신이 URL로 read.csv에 그 이름에서 전환하는 경우

, 당신은 내가 당신이 이런 질문에 대한 재현 예를 제공 할 필요가

+0

여기에 데이터 소스 링크, 그런 뜻이라면? https://github.com/staceynlee/Pseudo-Facebook-Data-Udacity/blob/master/pseudo_facebook%20(1).tsv –