2016-09-24 16 views
26

棒グラフをプロットしている間にこのエラーが発生しています。これを取り除くことができません。qplotとggplotの両方を試しましたそれでも同じエラーです。続きR ggplot2:棒グラフで統計誤差を使用してはなりません

は私のコード

library(dplyr) 
library(ggplot2) 

#Investigate data further to build a machine learning model 
data_country = data %>% 
      group_by(country) %>% 
      summarise(conversion_rate = mean(converted)) 
    #Ist method 
    qplot(country, conversion_rate, data = data_country,geom = "bar", stat ="identity", fill = country) 
    #2nd method 
    ggplot(data_country)+aes(x=country,y = conversion_rate)+geom_bar() 

エラーです:

stat_count() must not be used with a y aesthetic 

データdata_country

country conversion_rate 
    <fctr>   <dbl> 
    1 China  0.001331558 
    2 Germany  0.062428188 
    3  UK  0.052612025 
    4  US  0.037800687 

にエラーが点線のグラフに棒グラフで来ていません。任意の提案は大きな助けになるでしょう

答えて

52

まず、あなたのコードは少しオフです。 aes()あなたは、バーの高さに等しい第二のケースを、したいヘルプファイルから?geom_bar

By default, geom_bar uses stat="count" which makes the height of the bar proportion to the number of cases in each group (or if the weight aethetic is supplied, the sum of the weights). If you want the heights of the bars to represent values in the data, use stat="identity" and map a variable to the y aesthetic.

、あなたがggplot(...) + aes(...) + layers

セカンドを使用していない、ggplot()で引数ですconversion_rateだから、あなたが望むものは...ある

data_country <- data.frame(country = c("China", "Germany", "UK", "US"), 
      conversion_rate = c(0.001331558,0.062428188, 0.052612025, 0.037800687)) 
ggplot(data_country, aes(x=country,y = conversion_rate)) +geom_bar(stat = "identity") 

結果:

enter image description here

+1

はい、それを説明していただきありがとうございました、私は少しこれはあなたの助けに感謝しています – Uasthana

関連する問題