Power BI Desktopでパラメーターを使い人流データを可視化（2）

##日付を整数型に変換

[前回](https://qiita.com/text_owleyes_0214/items/25c96cc75322df77b9ae)の続きです。
Dateパラメーターを一回設定して、1週間部（7日分）のデータを取得できるようにします。
もっとスマートな方法があると思うですが、プログラム的な知見が浅いため、コツコツと地道な方法（？）で進めました。

>指定した日付 - 1
指定した日付 - 2
・・・
指定した日付 - 6

と減算をするそれぞれのクエリーを用意します。
ただ、「日付型-1」をする方法が見つからなかったので、**「日付型の値を数字型に変換し、減産する」**方法を取りました。

そのために、まず**「日付型の値を数字型に変換した値」のリスト**を用意します。

前回作った**「para_date」**クエリを複製し、名前を**「para_date2」**に変更します。
右パネルの「クエの設定」の「適用したステップ」を下から削除し、「YYYYMMDD」の形式に戻し、日付型にします

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/0c4bac0c-cef2-c05b-14d8-7f379a9e2a0e.png)

右クリックから**「型の変更」→「整数」**にします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/ddf39994-9698-1723-841a-816451357e54.png)

**「リスト」に変換**します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/d2c9a0be-c26c-0e5c-4eb7-a82f66a88ef3.png)

前回と同様の手順で「新しいパラメーター」を用意します。
パラメーター名は**「select_para_date2」**としました。
現在の値は「44313」（2021/04/27）とします。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/e1d5ec7c-dda5-bbd5-514b-4e404387af62.png)

「パラメーター利用1」を複製し、**「-1_パラメーター利用1」**という名称にします。
この時点の**「詳細エディター」**のスクリプトは以下のようになっています。

```javascript
let
    ソース = Json.Document(Web.Contents(Text.From("https://opendata.corona.go.jp/api/ReductionRate" & selerct_para_date & "&dataName=" & select_para_area))),
    テーブルに変換済み = Table.FromRecords({ソース}),
    削除された列 = Table.RemoveColumns(テーブルに変換済み,{"errorInfo"}),
    #"展開された itemList" = Table.ExpandListColumn(削除された列, "itemList"),
    #"展開された itemList1" = Table.ExpandRecordColumn(#"展開された itemList", "itemList", {"date", "dataType", "dataName", "comparisonPreDay", "comparisonPreDeclare", "comparisonPreSpread"}, {"itemList.date", "itemList.dataType", "itemList.dataName", "itemList.comparisonPreDay", "itemList.comparisonPreDeclare", "itemList.comparisonPreSpread"}),
    変更された型 = Table.TransformColumnTypes(#"展開された itemList1",{{"itemList.dataType", Int64.Type}, {"itemList.comparisonPreDay", type number}, {"itemList.comparisonPreDeclare", type number}})
in
    変更された型
```

以下のように変更します。

>    ソース = Json.Document(Web.Contents(Text.From("https://opendata.corona.go.jp/api/ReductionRate" & selerct_para_date & "&dataName=" & select_para_area))),
　↓　↓　↓
    ソース = Json.Document(Web.Contents(Text.From("https://opendata.corona.go.jp/api/ReductionRate" & "?date=" & Date.ToText(Date.From(**select_para_date2-1**), "YYYYMMDD") & "&dataName=" & select_para_area))),

マイナス1日の「2021/04/26」のデータが取得できています。
上記の変更では、**「select_para_date2-1」を「YYYYMMDD」の形式に変換し、さらに「文字列型」に変換し、URLも末尾に付与**しています。
もう少し効率のよい方法があるかもしれませんが、思いつきそうもないので、今回はこれで進めます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/067ae05c-27ae-8fb9-8aae-856f26b64ee6.png)

##クエ入りの追加で1週間分まとめて取得

1週間分なので、追加で

>**select_para_date2-2**　クエリ名は「-2_パラメーター利用1」
**select_para_date2-3**　クエリ名は「-3_パラメーター利用1」
**select_para_date2-4**　クエリ名は「-4_パラメーター利用1」
**select_para_date2-5**　クエリ名は「-5_パラメーター利用1」
**select_para_date2-6**　クエリ名は「-6_パラメーター利用1」

と用意します。

クエリを1つにマージしたほうが使いやすいので、**「7days_パラメーター利用1」**としてマージ（追加）します。
「-1_パラメーター利用1」を複製し「7days_パラメーター利用1」を作り、順番が逆になりますが、「-1日」でない指定した「当日」を選ぶクエ入に変更し、ここに他の**クエリを追加**します。
**「select_para_date2-1」を「select_para_date2」**とします。

>    ソース = Json.Document(Web.Contents(Text.From("https://opendata.corona.go.jp/api/ReductionRate" & "?date=" & Date.ToText(Date.From(**select_para_date2**), "YYYYMMDD") & "&dataName=" & select_para_area))),
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/871c49d8-f834-ac5a-e6d1-b5598ec56f79.png)

クエリの追加を行います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/a6e64bf3-23ea-308a-7a9d-91c4f082aef9.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/35648597-5b52-7944-9c48-f562fb19648c.png)

1つのクエリに集約できました。
3種類の数値（割合）の列名を「前日比_PreDay」「宣言前(20200407)との比較_PreDeclare」「感染拡大以前との比較（202001-02）_PreSpread」と変更します。
左上の**「適用」**をクリックし、可視化設定画面に移ります。
「集合縦棒グラフ」で可視化しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/87a92a10-ea06-b8a9-6c0b-8658fb2cc299.png)

**「データの変換」→「パラメーターの編集」**でパラメーターの値を変更します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/3000f89a-9006-439a-56d1-43853486897a.png)

##プルダウンリストから「日付」と「エリア選択」

プルダウンリストから「select_para_area」に「北海道札幌駅周辺」、「select_para_date2」に「44315」（2021/04/29）を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/a4e20fff-fb33-e571-36f6-4d3c127bf3c8.png)

更新されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1143963/59093911-f79b-3373-1168-e7cea57d8f31.png)

作業の区切り区切りで保存します。

**了**