GCPUG-FUKUOKA データ加工&可視化ハンズオン
-
Upload
wasaburo-miyata -
Category
Data & Analytics
-
view
766 -
download
1
Transcript of GCPUG-FUKUOKA データ加工&可視化ハンズオン
3
■Agenda1. ハンズオン説明
○ 使用データ/作成ダッシュボード
○ アーキテクチャ
2. Google Cloud Dataprep(ベータ版)
○ 概要/初期設定
○ ハンズオン①(基本操作)
○ ハンズオン②(データ編集)
○ ハンズオン③(データ出力)
3. Google Data Studio(ベータ版)
○ 概要
○ ハンズオン
※11/11時点で公開ベータ版のサービスです。GAの際には操作方法など変更となっている可能性があります。
5
福岡市の大気環境測定結果(直近48時間)
# 項目
1 年月日
2 測定局名称
3 測定項目
4 緯度
5 経度
6 単位
7 測定値(1時)
~ ~
30 測定値(24時)
福岡市内16箇所の直近48時間の大気環境測定データ(1時間毎に更新)です。なお、値は未確定なので後日修正されることがあります。
https://ckan.open-governmentdata.org/dataset/atmospheric48
使用データ
7
アーキテクチャ
Data Studio
Cloud Dataprep
Cloud Shell
Cloud Storage
Cloud Storage
オープンデータ
CSV
文字コード変換 データ編集 可視化レポート共有
https://datasut・・
10
● エディタの機能で置換、コピペ、マクロ● Excelでピボットテーブル、関数
● プログラムで一行ずつ処理● sed,awk,grepを駆使● RやPythonでデータフレームに突っ込んで処理
● 分散DB(DWH)に突っ込んでSQL● Hadoop
定型化したい
スケールしたい
エンジニア必要
Cloud Dataprep
データ編集いろいろ
11
Dataprep概要
1. コード不要でデータ準備、クレンジングが可能
2. 自動でデータ型を予測、欠損値、外れ値を検出
3. Trifacta(https://www.trifacta.com/)をGCP上で実装
4. サーバーレス&自動スケール(裏でCloud Dataflowが起動)
5. 現時点でShift_JIS未対応(UTF-8が無難)
https://www.trifacta.com/support/articles/topics/139873-transforms
https://cloud.google.com/dataprep/docs/
※11/11時点(公開ベータ版)GAの際には変更となっている可能性があります。
12
料金
Dataprep自体の使用は課金されないが、Dataprep内
で使用される下記に課金される。
● Google Cloud Dataflow: Cloud Dataprep ジョブは Cloud Dataflow
ジョブとして実行され、Cloud Dataflow の料金体系に従って課金
● ストレージ リソース: Google Cloud Storage に保存されたデータ
は、Cloud Storage の料金体系に従って課金
14
入力と出力
1. BigQuery
2. Excel
3. CSV
4. JSON
5. PLAIN TEXT
6. LOG
7. TSV
8. Avro
https://cloud.google.com/dataprep/docs/html/Supported-File-Formats_57344528
Input Output
1. BigQuery
2. CSV
3. JSON
4. Avro
16
https://cloud.google.com/dataprep/docs/quickstarts/quickstart-dataprep
1. アカウント作成
2. GCPプロジェクトを作成
3. プロジェクト課金設定
4. API有効化
a. Cloud Dataflow
b. BigQuery
c. Cloud Storage
プロジェクト設定
17
1. Google Cloud Shell 起動
2. ファイル準備
a. データダウンロード
b. UTF-8変換
c. GCSへアップロード
https://github.com/wamiya/dataprep-handson/blob/master/uplaodgcs.txt
クリック
Shellのが画面が起動される
データ設置
19
ハンズオン①(基本操作)
1. 入力データ設定
2. データ参照(サンプリングデータ設定)
3. データ編集(Suggestionを利用)
4. レシピ操作
5. ジョブ実行(データ出力)
6. データソースプロファイル
データ確認
21
様々な条件データを絞り込んで実データを確認Random,FirstRows,Filter-based,Anomaly-basedStratified,Cluster-based
取得したサンプルのデータセットを選択
異常値/欠損値を見つけて、除外/置換する
22
②異常値(数字以外)を検出
①自動で整数型と判定
③対象データのハイライト
④選択したデータに対して除外や置換などの処理が提案される
⑤提案された内容を選択し、Addする事で処理実行される。
27
ハンズオン②(データ編集)
1. 時間列データ縦持ち
2. 欠損値置換
3. 時間列設定
3.1. 置換(column_ ⇒ “”)
3.2. 置換(24 ⇒ 0)
4. 日付時刻列作成
4.1. 翌日列作成
4.2. 日付置換(24時は翌日へ)
4.3. 日付時刻列作成
4.4. 日付時刻列書式設定
5. 不要列の削除
6. 列名変換
28
ハンズオン②(データ編集)
年月日 測定局 測定項目 緯度 経度 単位 値(1時) ~ 値(24時)
20171101 香椎 一酸化窒素 33.6723 130.437 ppd 8 ー 12
[編集前]
年月日-時間 測定局 測定項目 単位 値
2017-11-01 01:00:00 香椎 一酸化窒素 ppd 8
2017-11-01 02:00:00 香椎 一酸化窒素 ppd 10
・・・・・ ・・ ・・ ・・・ ・・・・
2017-11-01 23:00:00 香椎 一酸化窒素 ppd 7
2017-11-02 00:00:00 香椎 一酸化窒素 ppd 12
[編集後]
29
時間列データ縦持ち
①Columnsクリック
②縦持ちにしたいカラムを全て選択(column1~Column24)※Windowsの場合Shiftを押しながら最初の列と最後の列を選択
③Action↓Restructure↓Unpivot
40
列名変更①列横のメニューよりrename
②新しい名前を入れる
③Add
下記の通り名前を設定する。
列名 新しい列名
column date_time
column1 kyoku
column2 koumoku
column5 tani
value value
49
■概要
1. 無料のダッシュボード/レポート作成ツール
2. 様々なデータソースを使用する事が可能
a. BigQuery/Cloud SQL
b. Goolge アナリティクス
c. Google スプレッドシート・・・・などなど
3. データの変換・計算式が可能
4. リアルタイムでの共有、共同編集が可能
https://cloud.google.com/data-studio/?hl=ja
50
ハンズオン
1. データソース
1.1. データソース接続
1.2. データソース編集
2. レポート作成
2.1. タイトル
2.2. フィルタ
2.3. 円グラフ
2.4. 期間
2.5. ピボットテーブル
2.6. レイアウト/テーマ
3. 実行と共有
3.1. レポート名変更と実行
3.2. レポート共有
64
名称の変更
①kankyodata
②date_time ⇒ 日付時刻date_timeのコピー ⇒ 日付tani ⇒ 単位value ⇒ 値kyoku ⇒ 測定局koumoku ⇒ 測定項目
③レポートの作成
71
レポート作成(ピボットテーブル)
①ピボットテーブルを選択
②ピボットテーブルを配置
④列のディメンションに測定局を設定
③行のディメンションに日付を設定
⑤合計☑行の総計を表示する☑列の総計を表示する
⑥並び替え行の並び替えを日付の昇順とする。