2017-07-20 19 views
0

4つの異なる塩味の牡蠣の2つの集団の平均累積死亡率を持つグラフを取得する必要があります。Rの累積死亡率グラフ

Date = c("5/29/2017","5/31/2017","6/2/2017", "5/29/2017","5/31/2017","6/2/2017","5/29/2017","5/31/2017","6/2/2017","5/29/2017","5/31/2017","6/2/2017","5/29/2017","5/31/2017 ","6/2/2017","5/29/2017 ","5/31/2017","6/2/2017", "5/29/2017","5/31/2017","6/2/2017","5/29/2017", "5/31/2017","6/2/2017") 
Mortality = c(0, 0.4, 0.5, 0.1, 0.3, 0.4, 0.2, 0.3, 0.5, 0.1, 0.2, 0.6, 0, 0.7, 0.8, 0.1, 0.6, 0.9, 0.1, 0.5, 0.9, 0.1, 0.6, 0.8) 
Tank = c("1A", "1A", "1A", "1B", "1B", "1B", "5A", "5A", "5A", "5B", "5B", "5B", "1A", "1A", "1A", "1B", "1B", "1B", "5A", "5A", "5A", "5B", "5B", "5B") 
Population = c("SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC") = c (SL SL SL SL SL SL SL SL SL SL SL SL LC LC LC LC LC LC LC LC LC LC LC LC) 

2つの値(たとえば1Aと1B)を平均してその値をプロットする必要があります。累積死亡率がx軸に表示されるように計算された日付のみを希望します。

私はExcelで作成した次のグラフを持っていますが、必要なものではありません。ここで

Salinity Graph

+2

正確には何が必要ですか? –

+1

また、あなたが投稿したコードは再現性がありません...文字列を引用符で囲んで、カンマで区切る必要があります: 'c( '1A、' 1A '...)' not 'c( 1A 1A ...) ' – digEmAll

答えて

1

あなたはプロットする前に、あなたのデータを要約するために他のパッケージを使用することができggplot2dplyr

を使用して私の解決策です。ここで私は2つのグループを作った(1 = 1Aと1B、2 =他のタンク)。

奇妙なことに、なぜこれらのデータにKapplan-Meierプロットを使用しないのですか?

Date = c("5/29/2017","5/31/2017","6/2/2017", "5/29/2017","5/31/2017","6/2/2017","5/29/2017","5/31/2017","6/2/2017","5/29/2017","5/31/2017","6/2/2017","5/29/2017","5/31/2017 ","6/2/2017","5/29/2017 ","5/31/2017","6/2/2017", "5/29/2017","5/31/2017","6/2/2017","5/29/2017", "5/31/2017","6/2/2017") 
Mortality = c(0, 0.4, 0.5, 0.1, 0.3, 0.4, 0.2, 0.3, 0.5, 0.1, 0.2, 0.6, 0, 0.7, 0.8, 0.1, 0.6, 0.9, 0.1, 0.5, 0.9, 0.1, 0.6, 0.8) 
Tank = c("1A", "1A", "1A", "1B", "1B", "1B", "5A", "5A", "5A", "5B", "5B", "5B", "1A", "1A", "1A", "1B", "1B", "1B", "5A", "5A", "5A", "5B", "5B", "5B") 
Population = c("SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "SL", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC", "LC") 


df <- data.frame(Date, Mortality, Tank, Population) 

library(dplyr) 
library(ggplot2) 

dfs <- df %>% mutate(TankGroup = if_else(Tank %in% c('1A','1B'),1,2)) %>% 
    group_by(Date, TankGroup) %>% 
    summarise(Mortality = mean(Mortality)) 

ggplot(dfs, aes(x = Date, y = Mortality, group = factor(TankGroup), color = factor(TankGroup))) + 
    geom_point() + geom_line() + theme_bw()