はじめに
Python初学者のわたしが覚えるために、学んだことを整理し、理解を深めるために記事を書いています。
スプレッドシートと連携するためには、たくさんのモジュールが登場します!
「これって何をするやつ?」「なんで必要なの?」と混乱してしまっています!なので、それぞれの役割と実際の活用例と一緒に整理します!
※前回のパート1からの続きとなります!
⑤pandas(パンダス)
役目:PythonからExcel、スプレットシート、CSVなどのデータと取ってくる、計算する、追加するなど自由に加工や集計をすることができます!
今回の役目としては、スプレッドシートから gspread が取ってきたデータを、Pandasの表(DataFrame)に変換して、扱いやすくする。
import gspread
import pandas as pd
#①【ファイルを開く】
#ClientにスプレッドシートのURLを開いて!お願い! → gspread
client.open_by_url(url=sheet_url)
#②【シートを開く】
#ファイルの中からシートを選ぶ → gspread
worksheet = spreadsheet.worksheet("クリニック一覧")
#③【データを一括でまるっと取得】
#シートにあるデータを辞書リストとして全部持ってくる! → gspread
dict_date = worksheet.get_all_records()
#④【表にする】
#分かりやすいようにDataFrame(データフレーム)にする!フィルタリングをして分析しやすく → pandas
#③で取得したデータを引数へ
df = pd.DateFrame(dict_date)
なんでDataFrame(データフレーム)する必要があるの?と疑問がでました!
DataFrameにすると簡単にフィルタリングすることができるようです!
イメージで言うとExcelのフィルタ機能を使える感じです!これだったら、私でもイメージできました!
スプレッドシート操作の流れまとめ
| モジュール | メソッド | 何できるか | |
|---|---|---|---|
| 1. 接続 | gspread | authorize() |
認証情報 → Client 認証情報を使って接続 |
| 2. ファイル取得 | Client |
open_by_url() / open_by_key()
|
Client → Spreadsheet(スプレッドシートのファイルを開ける or URLを開く) |
| 3. シート取得 | Spreadsheet | worksheet() |
Spreadsheet → Worksheet(タブ単位で扱える状態) |
| 4. データ取得 | Worksheet | get_all_records() |
Worksheet → 辞書リストとして全部持ってくる |
| 5. 表変換 | pandas | DataFrame() |
辞書データ → DataFrame フィルタリングして分析可能に! |
続きは、またパート3でまとめます!