One of my favorite things is ...

2020.02.23
XML
カテゴリ: データ分析
​​​ インフルエンザの週ごとの「定点当たり報告数」のデータを扱って、グラフを作成していますが、「R」による累計値の求め方には、Excelでの一般的な方法とは異なる方法があります。

最初は、Excelのシート的発想で、行が「週」、列が「年(正確には「シーズン」)」のワイド型データで累計値の列を求めていましたが、ワイド型では「NA」の行の存在、扱いが不便でした。

また、ワイド型データでは、年(シーズン)の列の数の累計の列を作成することになり、わかりにくく、扱いづらくなります。

この場合、「年(シーズン)
の情報」を持つのがロング型データです。

ロング型データであれば、19年シーズンの第8週以降のNAの行を簡単に削除したり、フィルターで除いたりできます。ワイド型データでは、他のシーズンの行まで削除してしまうことになります。

調べてみたら、「R」ではロング型データのままで、年(インフルエンザシーズン)別の「定点当たり報告数」の累計を簡単に求めることができることがわかりました。

「R」などでは、「Excelシート的発想」にとらわれないようにすることが必要なようです。

Excelの便利な機能を活用するのは、当然ですが、Excelよりも便利そうなものがあれば、それを利用してみるのも当然です。



「R」では、グループ別の累計の列は下記のコードだけで作成できました。

「シーズン」でグループ化して、グループのそれぞれで累計を計算するというコードです。

「df_inf <-  df_inf  %>%  group_by(influ_season) %>% mutate(csum = cumsum(influ))」のコードを下記のロング型データに適用します。



「df_inf <-  df_inf  %>%  group_by(influ_season) %>% mutate(csum = cumsum(influ))」のコードで上記のロング型データに下記のように累計のデータの列が追加されます。




ロング型データで、下記のようなグラフも簡単に作成できます。

ggplot(df_inf, aes(x=weeks, y=influ))+ geom_bar(stat = "identity") + labs(x="Week",y="Influenza cases reported per sentinel weekly",title="シーズン別の週ごとの累計の推移(2009年シーズン~2019年シーズン)") + facet_wrap(~seasons)+
  theme(axis.ticks = element_blank(),axis.text.x =element_blank())








★おすすめの記事  ​​








◆インフルエンザの流行が始まったようです:今年は流行の始まりが早いようです





◆Netflixの4半期決算報告で紹介されている作品は?:決算報告資料は、Netflixの話題作を探す一つの手段です

◆Netflix (NFLX)の第3四半期決算発表で、NFLXの株価上昇:1株利益が予想を上回る:「ストレンジャー・シングス」効果?で有料会員数の増加数は前年同期を上回る





◆How Windows Sonic looks like.​​:Windows Sonic for Headphonesの音声と2chステレオ音声の比較:7.1.2chテストトーンの比較で明らかになった違い:一目で違いがわかりました















​​​ ​​ ​​ ​​​​​





お気に入りの記事を「いいね!」で応援しよう

Last updated  2020.02.23 20:34:10
コメント(0) | コメントを書く


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Design a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: