これは、最初にここで尋ねられた質問の繰り返しです。棒グラフで統計的に有意な差を示していますが、PythonではなくRを求めています。
私の質問はとても簡単です。可能であればggplot2を使用して、Rでバープロットを作成し、さまざまなバーの間に有意差があることを示します。たとえば、このようなものを作成します。私は周りを検索しましたが、まったく同じことを尋ねる別の質問を見つけることができません。
これは、最初にここで尋ねられた質問の繰り返しです。棒グラフで統計的に有意な差を示していますが、PythonではなくRを求めています。
私の質問はとても簡単です。可能であればggplot2を使用して、Rでバープロットを作成し、さまざまなバーの間に有意差があることを示します。たとえば、このようなものを作成します。私は周りを検索しましたが、まったく同じことを尋ねる別の質問を見つけることができません。
とを使用geom_path()
しannotate()
て同様の結果を得ることができます。この例では、適切な位置を自分で決定する必要があります。geom_path()
線を接続するための小さな目盛りを取得するために、4 つの数値が提供されます。
df<-data.frame(group=c("A","B","C","D"),numb=c(12,24,36,48))
g<-ggplot(df,aes(group,numb))+geom_bar(stat="identity")
g+geom_path(x=c(1,1,2,2),y=c(25,26,26,25))+
geom_path(x=c(2,2,3,3),y=c(37,38,38,37))+
geom_path(x=c(3,3,4,4),y=c(49,50,50,49))+
annotate("text",x=1.5,y=27,label="p=0.012")+
annotate("text",x=2.5,y=39,label="p<0.0001")+
annotate("text",x=3.5,y=51,label="p<0.0001")
上記の提案された方法を使用しましたが、注釈機能は geom_path 関数よりも簡単に線を作成できることがわかりました。「テキスト」の代わりに「セグメント」を使用してください。セグメントごとに分割し、各線分の x 値と y 値の開始と終了を定義する必要があります。
3 つの線分を作成する例:
annotate("segment", x=c(1,1,2),xend=c(1,2,2), y= c(125,130,130), yend=c(130,130,125))