Google Sheets
date: 2020-07-22 excerpt: Google Sheetsの使い方
Google Sheets
概要
- excelのオンラインバージョンのアプリ
- bigqueryと繋げられたり便利
- 呼称のエイリアスが多くあり、
スプレッドシート
,スプシ
,GSS
などとも呼ばれる
Google Apps Script/GAS
概要
Microsoft Excel
のマクロに該当する機能- 様々な具体例はGoogle Developersに記されている。
Google Apps Scriptを開く
- SpreadSheetの
[拡張機能]
->[Apps Script]
からスクリプトエディタを開くことができる。
ssidについて
- URLに含まれるハッシュ値のようなものがssidでありスプレッドシート毎の固有値
- ssidを指定してgasで操作可能
基本的な操作
日付の表示を %Y-%m-%d に
[表示形式]
->[数字]
->[表示形式の詳細設定]
->[その他の日付や時刻の設定]
csv fileのインポート
[ファイル]
->[インポート]
->[アップロード]
Queryを使う
- SpreadSheet上のデータに対して、SQLのようなクエリを使うことができる。
A B
1 name val
2 a 10
3 b 20
4 c 30
5 a 15
6 b 40
以上のようなデータがあった際に、Bのカラムの平均や合計
=QUERY(B2:B6, "SELECT AVG(B), SUM(B)", -1)
Aに対してGROUP BY操作のようなこともできる
-
=QUERY(A2:B6, "SELECT A, AVG(B), SUM(B) GROUP BY A", -1)
セレクトボックを作る
[Data]
->[Data Validation]
->クライテリアを入力して、"Show dropdown list in cell"を選ぶ
column, rowの幅や高さを変える
- 幅や高さを変えたいcolumn, rowを選択
- 右クリックし
Resize columns...
またはResize rows...
を選択 - 設定したい幅か高さのpixel数を入力する
セルの中身を折り返して標示する
- テキスト位置のメニューの
|→|
のようなアイコンを選択 |⏎|
のようなアイコンにすると折返しになる|→|
; デフォルト。溢れた状態にするoverflow|⏎|
; 折返し。text wrapping|-|
; 溢れた文を消す。clip
基本的な可視化
積み上げグラフ
- indexがrow
- 積み上げる種別がcolumnになっている必要がある
- つまり、pandasであればhueを指定すればいいが、google sheetsでは明示的にpivotする必要がある
Google Sheetsからテキストエディタにデータをコピーする場合
- Google Sheetsにてコピーしたい範囲を選択
- テキストエディタにコピーする
- コピーしたデータはセルの区切りが
\t(タブ)
になっているので、必要なパーサーでパースする- pandasであれあば、
pd.read_csv(io.StringIO("""..."""), sep="\t")
となる
- pandasであれあば、
大量のシートを含むデータをGoogle Sheetsにアップロードする場合
- ユースケース
- 機械学習による大量の推論結果をGoogle Sheets経由でシェアする場合
- 手順
- pandasから一時的にExcelに出力
- Excelファイルを
スプレッドシートの置換
でインポート- 大量のデータをインポートすると、
Google ドキュメント内でエラーが発生しました~
と出るが、リロードを行うと、正常に反映される
- 大量のデータをインポートすると、
アドオン関連
- アドオンの追加
[拡張機能]
->[アドオンを取得]
OWOX BI BigQuery
- 概要
- 無料版のgoogleアカウントだとbigquery連携(データコネクタ)が使えないが、このアドオンを利用するとSQLを実行することができる
- 参考