---
title: 【Sisense Data Modeling】累計カレンダーでCOVID-19の移動合計推移を求めてみる
description: 東京のコロナ感染者の推移を見ると、毎日デコボコして傾向がわかりにくいですよね。これを移動合計で表すと傾向がくっきりと見えてきます。今回は累計カレンダーという特殊なテーブルを作成して、累計の推移を見るグラグを作成してみます。
image: https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/06_result-1024x517-1.png
---

![INSIGHT LAB_文字のみ_WHT-1](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF_WHT-1.png?width=400&height=110&name=INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF_WHT-1.png)

![INSIGHT LAB_文字のみ](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF.png?width=400&height=110&name=INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF.png)

[![お問い合わせ](https://hubspot-no-cache-na2-prod.s3.amazonaws.com/cta/default/5935783/a4a0266e-14ad-4388-b83f-681a6f35b8a7.png)](https://hubspot-cta-redirect-na2-prod.s3.amazonaws.com/cta/redirect/5935783/a4a0266e-14ad-4388-b83f-681a6f35b8a7)

<https://knowledge.insight-lab.co.jp/sisense/data-modeling/cumulative-calendar#tmpmodule_1601616829590464>

- [Sisenseとは](https://service.insight-lab.co.jp/sisense)
- [Sisenseナレッジ](https://knowledge.insight-lab.co.jp/sisense)
- [セミナー](https://event.insight-lab.co.jp/sisense-seminar)
- [トレーニング](https://service.insight-lab.co.jp/data-analytics-dojo/training_course)
- [お役立ち資料](https://download.insight-lab.co.jp/sisense/download)

###### 2 分で読むことができます。

# [【Sisense Data Modeling】累計カレンダーでCOVID-19の移動合計推移を求めてみる](https://knowledge.insight-lab.co.jp/sisense/data-modeling/cumulative-calendar)

 執筆者 [Turtle](https://knowledge.insight-lab.co.jp/sisense/author/turtle) 更新日時 2020年10月16日

###### Topics: [Data Modeling](https://knowledge.insight-lab.co.jp/sisense/tag/data-modeling)

![【Data Modeling】累計カレンダーでCOVID-19の移動合計推移を求めてみる](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/06_result-1024x517-1.png)

 目次

シャローム！Sato-Gです。  
先週の土曜日に自宅からもっと近いスーパーLでコロナ感染者が出たために閉鎖となってしまった。  
もう一つスーパーOがあるんだけど、コーヒー中毒者の僕としては、コーヒー豆の選択肢が多いスーパーLが開いてくれないと困る。  
しかし、火曜日に行ってみたらもう開いていた。  
しかも普通にお客さんもたくさん！  
なんだか拍子抜けだな。  
本当に安全は確保されたのかわからないけど、もうウィズコロナなんだからと割り切ることにしているんだろうね。お店もお客さんも...  
というわけで、今日はおいしいコーヒーを淹れている。

GOTOキャンペーンは東京もOKということなったけど、7月の段階で東京の感染者が100人を超える日が出て「これは大変だ」って言ってたのに、一旦500人近くまで増加したりすると、100人超えする日が続いても世間もあまり騒ぎ立てなくなったしね。  
多少の変化があっても感覚が麻痺しちゃっているのかなあ。  
では実際どうなのか、今回は移動合計という計算方法で検証してみる。

## 1. データについて

ジャッグジャパンさん提供のファイルを取り込もうとしたら、発症日に"8月16日"とか不正な値が入っていてエラーが発生。  
そんなデータが数件あるようで、メンテナンスも追いついていないのかな。  
ダウンロードしてデータを書き換えて取り込んでみた。

## 2. 移動合計の推移を求める

**[【Pulse】PulseでCOVID-19の感染者増加率のアラートを出してみる](https://sisense-knowledge.insight-lab.co.jp/pulse/covid-pulse/)** でご紹介した方法は最新の日付から１週間の累計を取っていた。  
しかし、この方法では推移を見ることはできない。  
では１週間単位の累計の推移を見たいという時はどうするのか？

この方法は**移動合計**と呼ばれ、例えば季節変動に左右されない傾向を見るような場合に利用される。Zチャートなども移動合計を使用して作成する。

## 3. 累計カレンダーで移動合計の推移グラフを作成する

### 3.1 累計カレンダーテーブルの作成

累計カレンダーを作成するには、

*SELECT Table1.Column1,Table2.Column2*  
*FROM Table1,Table2*  
*WHERE ...*

という基本構文を使用する。このSQLではTable-1とTable2の組み合わせの全パターンが抽出されるので、WHERE句で取得したいパターンの条件を指定する。  
作成したSQLは以下のとおり

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/01_sql-1024x315-1.png?width=1024&height=315&name=01_sql-1024x315-1.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/01_sql-1.png)

```
SELECT  date AS 累計年月日,
        date + ((rownum-1) * (-60*60*24)) AS 年月日,
        GetYear(date + ((rownum-1) * (-60*60*24)))*10000 + GetMonth(date + ((rownum-1) * (-60*60*24)))*100 + GetDay(date + ((rownum-1) * (-60*60*24))) AS 年月日KEY,
        rownum - 1 AS Counter
FROM
(SELECT DISTINCT d1.年月日 AS date,
        rownum
FROM [カレンダー] d1,
    (
    SELECT
        RANKASC(年月日KEY) AS rownum
    FROM [カレンダー]
    ) d2
WHERE rownum <= 7
) d3
ORDER BY date,Counter
```

解説しよう。  
このSELECT文ではd3というテーブルを  
カレンダーテーブルから年月日とカレンダーから取得したカウンターであるrownumの組み合わせを取得するが、rownumが7以下として日付であるdateに対して1～7のカウンターがつくテーブルができあがる。

```
(SELECT DISTINCT d1.年月日 AS date,
        rownum
FROM [カレンダー] d1,
    (
    SELECT
        RANKASC(年月日KEY) AS rownum
    FROM [カレンダー]
    ) d2
WHERE rownum <= 7
) d3
```

以下のSQLでdateを累計年月日として、カウンターであるrownumの分遡った日付の組み合わせができあがる。Counterはrownum-1とし、当日は0、それから遡って6がMAXとなる。

```
SELECT  date AS 累計年月日,
        date + ((rownum-1) * (-60*60*24)) AS 年月日,
        GetYear(date + ((rownum-1) * (-60*60*24)))*10000 + GetMonth(date + ((rownum-1) * (-60*60*24)))*100 + GetDay(date + ((rownum-1) * (-60*60*24))) AS 年月日KEY,
        rownum - 1 AS Counter
FROM　d3
ORDER BY date,Counter
```

できあがった累計カレンダーテーブルは以下のような構造となる。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/02_table-1-1.png?width=456&height=671&name=02_table-1-1.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/02_table-1-1.png)

### 3.2 リレーションの設定

カレンダーテーブルと累計カレンダーテーブルは年月日KEYでリレーション設定を行い、以下のデータモデルを完成させる。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/03_model-1024x584-1.png?width=1024&height=584&name=03_model-1024x584-1.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/03_model-1.png)

### 3.3 移動合計グラフの作成

棒グラフで移動合計のグラフを作成してみよう。  
カテゴリは累計年月日、値は7日移動合計と人数を設定する。  
ここでCounterはフィルターとして使用するので、以下の数式で\[Counter\]にフィルター設定を行う。  
*(SUM(\[人数\]),\[Counter\])*  
Counterのフィルターは0～6で、全て選択すると当日含め7日間の合計が計算される。これが7日移動合計だ。  
フィルターで0を選択すると、当日の感染者人数が計算される。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/04_formula-1024x464-1.png?width=1024&height=464&name=04_formula-1024x464-1.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/04_formula-1.png)

グラフは棒グラフとし、7日移動合計の「**系列の種類**」を「**エリア**」に設定し、グラフを完成させる。

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/05_area-1.png?width=799&height=546&name=05_area-1.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/05_area-1.png)

[![](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/Imported_Blog_Media/06_result-1024x517-1.png?width=1024&height=517&name=06_result-1024x517-1.png)](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/06_result-1.png)

うーん、これで見る限り、9月10日以降はまた増加傾向にあるように見えるぞ。  
GOTOキャンペーンの拡大のニュースはかなり解放的な気分にさせると思うけど、4連休は大丈夫なのか？  
この結果は10月頭くらいには出てくると思う。

## 4. まとめ

今回は累計カレンダーで遡りのカウンターを作成し、移動合計を求める方法を紹介した。  
日別の感染者数だけみるとデコボコしているので傾向がわかりにくいが、移動合計で見ると傾向がわかりやすくなるよね。  
次回はこれを応用して、移動年計を求めてみる。

最後に４連休は気を抜かずに楽しく過ごしましょう！  
ではまた！

Sisenseを体験してみませんか？

INSIGHT LABではSisense紹介セミナーを定期開催しています。Sisenseの製品紹介や他BI製品との比較だけでなく、デモンストレーションを通してSisenseのシンプルな操作性やプレゼンテーション機能を体感いただけます。

[![詳細はこちら](https://hubspot-no-cache-na2-prod.s3.amazonaws.com/cta/default/5935783/ff8d86bf-1184-4d92-8926-6a31a20de4b0.png)](https://hubspot-cta-redirect-na2-prod.s3.amazonaws.com/cta/redirect/5935783/ff8d86bf-1184-4d92-8926-6a31a20de4b0)

- [Tweet](https://twitter.com/share)

![Turtle](https://knowledge.insight-lab.co.jp/hubfs/Sunflower.jpg)

#### 執筆者 [Turtle](https://knowledge.insight-lab.co.jp/sisense/author/turtle)

可視化領域を中心とした業務に従事しています。

###### [前の投稿](https://knowledge.insight-lab.co.jp/sisense/widget/timeframe_widget)

[![【Widget】Timeframe Widgetを作成してみた](https://knowledge.insight-lab.co.jp/hubfs/Imported_Blog_Media/d62cf1bb869cdabf6fff2d3297e73f94-1024x432-2.png)](https://knowledge.insight-lab.co.jp/sisense/widget/timeframe_widget)

###### [【Sisense Widget】Timeframe Widgetを作成してみた](https://knowledge.insight-lab.co.jp/sisense/widget/timeframe_widget)

###### [次の投稿](https://knowledge.insight-lab.co.jp/sisense/plug-in/sisense-darkmode)

[![【Plug-in】Sisenseをダークモードにしてみた](https://knowledge.insight-lab.co.jp/hubfs/dark_mode.png)](https://knowledge.insight-lab.co.jp/sisense/plug-in/sisense-darkmode)

###### [【Sisense Plugin】Sisenseをダークモードにしてみた](https://knowledge.insight-lab.co.jp/sisense/plug-in/sisense-darkmode)

RECOMMEND こちらの記事も人気です。

<https://knowledge.insight-lab.co.jp/sisense/administration/ssl_lets_encrypt>

###### 4 分で読むことができます。

#### [【Sisense Administaration】無料のSSL証明書"Let's Encrypt"でSSL化してみる](https://knowledge.insight-lab.co.jp/sisense/administration/ssl_lets_encrypt)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/information/spotify_music_data_1>

###### 8 分で読むことができます。

#### [【API連携】Spotify音楽データの分析①【Sisense】](https://knowledge.insight-lab.co.jp/sisense/information/spotify_music_data_1)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/widget/step_line_chart>

###### 2 分で読むことができます。

#### [【Sisense Widget】折れ線グラフを階段状に表示する](https://knowledge.insight-lab.co.jp/sisense/widget/step_line_chart)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/widget/radarchart>

###### 3 分で読むことができます。

#### [【Sisense Widget】Radar Chartを使ってポケモンの種族値を表示してみた](https://knowledge.insight-lab.co.jp/sisense/widget/radarchart)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/formula/case>

###### 3 分で読むことができます。

#### [【Sisense Formula】CASE関数を使って条件分岐する](https://knowledge.insight-lab.co.jp/sisense/formula/case)

###### 2020年 10月 16日

<https://knowledge.insight-lab.co.jp/sisense/widget/line-graph>

###### 3 分で読むことができます。

#### [【Sisense Widget】折れ線グラフにおける欠落値の対処法](https://knowledge.insight-lab.co.jp/sisense/widget/line-graph)

###### 2020年 10月 16日

##### 運営会社

運営会社

- [会社概要](https://www.insight-lab.co.jp/about/company.html)
- [お問い合わせ](https://contact.insight-lab.co.jp/main)

##### メニュー

メニュー

- Sisenseとは
- [Sisenseナレッジ](https://knowledge.insight-lab.co.jp/sisense)
- [セミナー](https://event.insight-lab.co.jp/sisense-seminar)
- [お役立ち資料](https://download.insight-lab.co.jp/sisense/download)

[![INSIGHT LAB_文字のみ_WHT-1](https://knowledge.insight-lab.co.jp/hs-fs/hubfs/INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF_WHT-1.png?width=200&height=55&name=INSIGHT%20LAB_%E6%96%87%E5%AD%97%E3%81%AE%E3%81%BF_WHT-1.png "INSIGHT LAB_文字のみ_WHT-1")](https://www.insight-lab.co.jp/)

- [プライバシーポリシー](https://www.insight-lab.co.jp/privacy.html)

Copyright © 2020 INSIGHT LAB, Inc.

<https://twitter.com/INSIGHTLAB_INC><https://www.youtube.com/channel/UCOKNKiO4uuza4NioSZpBMhg>