
この記事のゴール
在宅・子育てでまとまった学習時間が取りにくい人でも、1日1時間を正しい順番で重ねれば、90日で「図1枚+Excel」までの納品レベルに到達できます。この記事では、
-
習慣化のコツ(中断→再開が早い運用)
-
15/30/60分のデイリーメニュー(コピペOK)
-
週次〜30日/90日ロードマップ
-
SQLite × pandas × Excelで作る最小成果物テンプレ
-
家族・同居人と揉めない合意形成テンプレ
まで、初学者でも迷わない手順で解説します。
学習が続かない“本当の理由”と対処法
在宅・子育ての壁は「時間がない」ことではなく、時間が断続的で文脈が切れやすいことにあります。
以下の課題に対し、“いつでも中断/再開できる”設計へ切り替えるのが近道です。
対処の原則(3つだけ)
- 小さな完了を毎日つくる(Notebook 1〜2セル/SQL 1本を“仕上げる”)。
- 次やることをコードの先頭にコメントで明記する(復帰コストを1分に)。
- 作業の最後に必ず可視化/出力(図1枚 or Excel追記)で“進捗が見える”状態を残す。
著者より(ふみとメモ)
道具は軽く、粒度は小さく、成果は見える化。
具体的には**SQLite(ローカルDB)× pandas(集計)× Excel(配布)**の三点セットが時短最強です。
“1日1時間”で進むデイリーメニュー
目的は、翌月に使える小さなアウトプットを毎週出すこと。動画視聴より手を動かす時間を最大化します。
デイリーメニュー(保存版)
60分版
・10分:ログ&準備(前回の「次やること」を確認 → 今日の完了定義を1行で書く)
・35分:実装/検証(Notebook 1〜2セル or SQL 1本を“仕上げる”)
・10分:可視化/出力(図1枚 or Excel追記)
・5分:次のTODO(次セルの冒頭にコメントで残す)
30分版
・5分 ログ → 20分 実装 → 5分 次TODO
15分版(緊急)
・3分 ログ → 10分 注釈やREADMEを追加 → 2分 次TODO
※どの版でも最重要は「次やることをコードの一番上に書く」こと。
週次の型と「30→90日」ロードマップ
- Mon:要件/設計(KPI・粒度・SQL草案)
- Tue:ETL(取り込み・バリデーション)
- Wed:集計(
WITH monthly完成) - Thu:可視化(根拠図+注釈)
- Fri:配布(Excel/PDF、README更新、家族へ学習成果を3行共有)
30→90日の見取り図
-
Day 1–30|基礎×1本納品:テーマ例「月次×店舗の売上トレンド」。成果物:Excel 1冊+図1枚。
-
Day 31–60|効率化:増分ロード、
PRAGMA/INDEX適用で日次5分自動更新へ。 -
Day 61–90|応用:Top-kリストやYoYアラート(シンプルな閾値)。余力があればPR-AUC/Top-k評価も。
実装テンプレ:軽量スタック(SQLite×pandas×Excel)
サーバ不要・ファイル1つ・再現性高め。最小労力で「動く成果物」まで出し切る構成です。
プロジェクト雛形(コピペ)
home_learning/
├─ data/
│ ├─ raw/
│ └─ warehouse/
├─ src/
│ ├─ etl.py
│ ├─ sql/create_tables.sql
│ └─ report.py
├─ reports/
└─ README.md
create_tables.sql
PRAGMA foreign_keys=ON;
CREATE TABLE IF NOT EXISTS sales (
order_date TEXT, store TEXT, product TEXT,
qty INTEGER, price REAL
);
CREATE INDEX IF NOT EXISTS idx_sales_store_date ON sales(store, order_date);
ここで何をしている?
- 分析に必要な最小限のテーブルを作成。
- インデックスで「店舗×日付」の集計を高速化(後の月次集計がサクサク動く)。
etl.py(最小版)
from pathlib import Path
import sqlite3, pandas as pd
ROOT = Path(__file__).resolve().parents[1]
DB = ROOT/"data/warehouse/home.sqlite"
def init\_db():
DB.parent.mkdir(parents=True, exist\_ok=True)
con = sqlite3.connect(DB)
con.execute("PRAGMA journal\_mode=WAL;")
con.executescript((ROOT/"src/sql/create\_tables.sql").read\_text())
con.close()
def load\_csv(csv\_path: str):
con = sqlite3.connect(DB)
df = pd.read\_csv(csv\_path)
df = df.query("qty>0 and price>0")
df.to\_sql("sales", con, if\_exists="append", index=False)
con.close()
ここで何をしている?
init_db():DBファイルを作り、先ほどのSQLでテーブル定義を流し込みます。load_csv():sales.csvを読み込み、明らかな不正値を除外したうえでDBに追記します。
ポイント:ETLの段階で“最低限のバリデーション”を入れておくと、後工程の集計が安定します。
report.py(月次×店舗、図1枚+Excel)
import sqlite3, pandas as pd
import matplotlib.pyplot as plt
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
DB = ROOT/"data/warehouse/home.sqlite"
SQL = """
WITH m AS (
SELECT strftime('%Y-%m', order\_date) AS ym,
store,
SUM(qty\*price) AS sales
FROM sales
GROUP BY ym, store
)
SELECT \* FROM m;
"""
def export\_all():
con = sqlite3.connect(DB)
m = pd.read\_sql\_query(SQL, con)
con.close()
\# 図
g = m.groupby("ym", as\_index=False)\["sales"].sum()
plt.figure(); plt.plot(g\["ym"], g\["sales"], marker="o")
plt.title("月次売上の推移"); plt.xticks(rotation=45); plt.tight\_layout()
(ROOT/"reports").mkdir(exist\_ok=True, parents=True)
plt.savefig(ROOT/"reports/fig\_trend.png", dpi=200, bbox\_inches="tight")
\# Excel
with pd.ExcelWriter(ROOT/"reports/report.xlsx") as xw:
m.to\_excel(xw, sheet\_name="monthly", index=False)
ここで何をしている?
- SQLの
WITH(CTE)で**“月×店舗”の売上**を作成。 - Python側で全体の月次推移を図にし、Excelにサマリを出力します。
実行順:init_db() → load_csv("data/raw/sales.csv") → export_all()
まずはこの3関数が上から通ることを最初のマイルストーンにしましょう。
家族・同居人と揉めない“合意形成テンプレ”
時間帯を固定し、宣言と可視化で協力を得ます。下記をそのまま使ってOK。
【目標】90日で在宅副業の最小納品(Excel+図1枚)を完成
【時間帯】毎朝6:30-7:30(子ども起床前)/ 予備:21:30-22:00
【禁止事項】朝時間の呼び出し/学習中の通知
【ヘルプ】ゴミ出し/洗濯は前日夜に完了
【可視化】週1で成果を3行共有(Slack/LINE)
サポートを活用して“止まらない学習”へ
独学でも進められますが、すきま時間で詰まった時にすぐ聞ける環境があると中断→離脱を防げます。6ヶ月ロードマップに沿って在宅×副業へ繋げるなら、下記2校の無料カウンセリングは強力な選択肢です。
・株式会社キカガク:業務再現型課題で、レポート納品〜ポートフォリオまで一気通貫。
・Tech Academy:質問速度×短時間運用が強み。育児の合間でも継続しやすい。
TechAcademy データサイエンスコース(受講料:174,600円~ ※更に割引あり)

株式会社キカガク AI人材長期育成コース(受講料:237,600円~)

読者タイプ別:運用のコツ
- 社会人(キャリアチェンジ):朝活60分で週5。Mon設計→Fri配布の型を死守。
>>【保存版】データ職のポートフォリオ完全ガイド|再現性・評価・LTまで - 副業(稼ぎたい):金曜は必ずExcel出力まで。テンプレで毎月の定例化。
>>【保存版】データレポート納品の型:要件定義→ETL→検証→可視化→Excel/PDF→引き継ぎまで、失注しないワークフロー完全版 - 主婦/夫(在宅):15分版を常備。コメントTODOで中断→再開を速く。
>>【保存版】Jupyter Notebookの基本:環境構築・使い方・再現性・“読みやすいノート”設計まで完全ガイド
付録:積み上げリスト&メモの型&FAQ
A. 15分でできる“積み上げ行動”
- Notebookのヘッダー/設定セルを整える(乱数/パス/バージョン印字)
WITH monthlyのCTE名とコメントを付ける- グラフに注釈1つ足す(キャンペーン開始)
- Excelに
READMEシートを追加 requirements.txtのバージョン固定
B. 中断→再開を速くするメモの型(コピペ)
# TODO(次回)
- report.py にカテゴリ構成比(100%積み上げ)を追加
- 配布Excelに Summary タブを作る(売上/YoY)
- README に実行手順を追記
C. FAQ
Q. PCが開けない日はどうする?
A. 15分版で注釈やREADMEなど“軽作業”を進める。ゼロを作らないことが続くコツ。
Q. 子どもが起きて中断した
A. TODOコメントを先頭に置く運用にしておく。復帰は1分で可能。
この記事から次に読むべきもの(内部リンク)
-
-
【保存版】SQLite×Pythonで作る“ローカルDWH”|ETL・集計・レポート自動化の最短手順
ローカルでゼロ構築、ファイル1つで完結、サーバ不要。 本記事はSQLite×Pythonで“毎日回る”ETL・集計・レポート自動化を最短で作るための完全ガイドです。データ設計→DB作成→ETL(取り込 ...
-
-
【保存版】データレポート納品の型:要件定義→ETL→検証→可視化→Excel/PDF→引き継ぎまで、失注しないワークフロー完全版
“いい分析”より“伝わる納品”。副業や実務で評価されるのは、意思決定に効く1枚と再現できるパッケージを期限通り出せること。 本記事は、未経験〜初学者が 週10時間×2〜3週 で、要件定義 → データ受 ...
-
-
【保存版】可視化入門:Matplotlib/Plotlyの使い分けと“伝わるグラフ設計”10ステップ
結論:可視化は「きれいに描く」ことではなく、意思決定を動かすための設計です。 本稿では、未経験〜初学者が 週10時間×1〜2週 で、Matplotlib/Plotlyを軸に “伝わるグラフ”の設計と実 ...
-
-
【保存版】データ職のポートフォリオ完全ガイド|再現性・評価・LTまで
ポートフォリオって「作ったものの置き場」でしょ? いいえ。採用側が見たいのは「意思決定に効いた証拠」と「再現性」です。 本ガイドは、未経験〜初学者が週10時間×4〜6週で、テーマ選定→要件定義→データ ...
-
-
未経験からデータサイエンティストへ:6ヶ月ロードマップ【現役が解説】
「数学もPythonもゼロだけど、半年で実務に通じる力はつく?」 結論、週10時間×24週の積み上げで「面接で語れる実務再現ポートフォリオ」まで到達できます。 カギは「学ぶ順番」と「毎週の小さな到達点 ...
最近のコメント