2016-09-10 60 views
-6

因此,我試圖用逗號分隔的.csv中的一個逗號來創建boxplot。我知道在另一臺電腦上使用相同的代碼是成功的。我運行代碼並無效地收到「類字符錯誤」。我能做什麼?我已經看到,也許檢查is.numeric。我非常感謝任何幫助! 這裏是代碼:在R Studio中,我正在處理:錯誤:ggplot2不知道如何處理類字符的數據

library("ggplot2") 
df <- "SedimentLoadStatisticsPerProperty.csv" 

p <- ggplot(df, aes(as.factor(df$Ppa), df$MEAN)) + 
    #geom_point(size=2, shape=23) +     
    geom_boxplot() +         
    theme_bw() +          
    scale_x_discrete("Property Price, $/Acre") + 
    labs(y=bquote('Sediment Load, ton/'~m^2)) +  
    theme(axis.title.x = element_text(face="bold",size=20),axis.text.x = element_text(size=16,angle=90,vjust=0.5)) + 
    theme(axis.title.y = element_text(face="bold",size=20),axis.text.y = element_text(size=16)) 
+0

歡迎來到Stack Overflow。你的'df'是一個字符向量。您需要使用'read.csv'讀取該文件並將結果保存爲'df'。 – shayaa

回答

2

兩件事。

首先,正如@shayaa指出的那樣,您需要先閱讀csv;您當前的示例將df設置爲列出位置的字符串。

更改爲:

df <- read.csv("SedimentLoadStatisticsPerProperty.csv")

其次,ggplot內,在AES避免使用DF $變量。您可以直接通過列名引用東西。此更改爲:

p <- ggplot(df, aes(as.factor(Ppa), MEAN)) +

另外,根據你的數據,你也許並不需要大約PPA as.factor()

+0

非常感謝兩位!我會嘗試這些建議。 –

相關問題