副業案件で初めてデータ分析を任されて、人生が変わった話
2024年の秋、私は焦ってた。Web制作の副業で月10万くらい稼いでたけど、単価が頭打ち。コーディング案件って、どうしても時給3,000円が限界なんだよね。
で、たまたまクラウドワークスを眺めてたら、「Excelデータの分析レポート作成」って案件が目に入った。報酬8万円、作業時間の目安10時間。時給8,000円。
「これ、絶対怪しい案件だろ」
最初はそう思った。でも詳細を見たら、「Pythonで簡単なデータ分析ができる方」って書いてある。PythonならWeb制作で使ってたし、データ分析も少しは触ったことある。

半信半疑で提案文を送った。翌日、採用の連絡。クライアントは中小企業の経営者で、毎月のExcel売上データを分析してほしいとのこと。
「Pandasっていうライブラリ使えば簡単ですよ」って言われて、初めてPandasをちゃんと勉強した。それまでは名前だけ知ってて、触ったことなかった。
結果?3日で納品して、クライアントから「今まで2週間かけて手作業でやってた分析が3分で終わった」って感激された。その後、月次契約で12万円の継続案件になった。時給換算で5時間の作業だから、月10時間で12万円。
あれから半年。今はPandasを使ったデータ分析案件を月3件こなして、副業収入が月35万円を超えてる。Web制作の時の3倍以上。
この記事では、「Pandasって何?」「どうやって勉強すればいい?」「副業案件は本当に取れるの?」って思ってる人に向けて、実践的なサンプルコード付きでPandasの使い方を解説していく。
プログラミング学習してる人、副業で収入増やしたい人、エンジニアとしてスキルアップしたい人。Pandasは、今すぐ学ぶべきスキルの一つ。需要が圧倒的に高くて、案件単価も高い。
実際、私がメンターしてる受講生の中にも、Pandas学習を始めて3ヶ月で月8万円稼いでる人がいる。特別な才能は要らない。正しい学習方法と、正しいコードの書き方を知ってれば、誰でも使えるようになる。
なぜ今Pandasを学ぶべきなのか
データ分析案件が爆発的に増えてる
「DX推進」「データドリブン経営」…こういう言葉、最近やたら聞くよね。企業はみんな、手元のデータを活用したがってる。でも、データ分析できる人材がいない。
クラウドワークスで「データ分析」って検索すると、2,500件以上の案件が出てくる。ランサーズでも400件以上。しかも、「Python」「Pandas」って指定してる案件の単価が、他より圧倒的に高い。
私が初めて案件を取ったときも、提案文を送って5時間後には「ぜひお願いします」って返事が来た。競合は10人くらいいたけど、Pandasが使える人は私だけだった。
これ、どういう意味かわかる?
需要が供給を圧倒的に上回ってる。つまり、Pandasのスキルがあれば、案件が取り放題ってこと。
学習コストが低い
Pandasの良いところは、学習曲線が緩やかなこと。基本的な使い方なら、1週間もあれば十分。
私の場合:
- Pandas学習開始:2024年9月
- 初案件獲得:2024年9月(学習開始から1週間後)
- 月10万円達成:2024年10月(1ヶ月後)
- 月30万円達成:2025年2月(5ヶ月後)
しかも、Pythonの基礎さえできてれば、Pandasの文法はすぐ理解できる。コード自体もシンプルで読みやすい。
案件単価が高い
一般的な副業案件の時給:
- ライティング:1,000~2,000円
- Webデザイン:1,500~3,000円
- Web制作(HTML/CSS/JS):2,000~4,000円
Pandasを使うデータ分析案件の時給:
- 初心者:3,000~5,000円
- 中級者:5,000~8,000円
- 上級者:8,000~15,000円以上
私が今取ってる案件の平均時給は6,500円くらい。月40時間働けば、26万円。これだけで、普通のサラリーマンの月収に届く。
しかも、経験を積めば単価はどんどん上がる。今は時給1万円の案件も普通に提案してる。

他のスキルと組み合わせやすい
Pandasは、他の技術と組み合わせることで価値が倍増する。
例えば:
- Pandas + 機械学習 = データサイエンティスト案件(月単価50~100万円)
- Pandas + Web開発 = データドリブンなWebアプリ開発
- Pandas + 自動化 = 業務効率化ツール開発
私はWeb制作の経験があったから、Pandasで分析したデータをWebダッシュボードで可視化する案件を取ってる。これが超高単価。1案件30~50万円。
Pandasって何? 基本から理解する
Pandasの正体
Pandas(パンダス)は、Pythonでデータ分析を行うためのライブラリ。ExcelやSQLみたいな表形式のデータを、プログラムで簡単に扱えるようにしたもの。
「データ分析」って聞くと難しそうだけど、やってることはシンプル:
- データを読み込む
- データを加工する(並び替え、フィルタリング、集計など)
- データを分析する(統計、相関など)
- 結果を可視化する
Pandasを使えば、これらの作業がたった数行のコードでできる。
DataFrameとSeries:Pandasの2つの柱
Pandasには2つの基本データ構造がある。
DataFrame(データフレーム)
表形式のデータ。Excelのシートみたいなもの。行と列がある。
import pandas as pd
# DataFrameの作成例
data = {
'名前': ['田中', '佐藤', '鈴木'],
'年齢': [25, 30, 28],
'売上': [120000, 150000, 130000]
}
df = pd.DataFrame(data)
print(df)
実行結果:
名前 年齢 売上
0 田中 25 120000
1 佐藤 30 150000
2 鈴木 28 130000
Series(シリーズ)
1列だけのデータ。DataFrameの1列を取り出すとSeriesになる。
# Seriesの取得例
ages = df['年齢']
print(ages)
print(type(ages)) # <class 'pandas.core.series.Series'>
DataFrameが表全体で、Seriesが列。この2つを理解すれば、Pandasの8割は理解できる。
なぜExcelじゃダメなのか
「Excelでいいじゃん」って思った人もいるよね。私も最初はそう思ってた。
でも、Pandasの方が圧倒的に優れてる点がある:
- 大量データに強い
- Excel:10万行でカクカク
- Pandas:100万行でもサクサク
- 再現性がある
- Excel:手作業だから同じ結果を再現するのが難しい
- Pandas:コードだから何度でも同じ結果が出る
- 自動化できる
- Excel:毎回手作業
- Pandas:一度コードを書けば自動化できる
- バージョン管理できる
- Excel:ファイルを保存し直す
- Pandas:Gitでコードを管理できる
実際、私が取った初案件は、クライアントが毎月2週間かけてExcelで手作業してた分析を、Pandasで3分に短縮した。これだけで価値がある。
実践サンプルコード集:これだけ覚えれば案件が取れる
ここからは、実際に副業案件でよく使うPandasのコードを紹介していく。全部コピペで動くサンプルコード付き。
データの読み込み
データ分析の第一歩は、データを読み込むこと。Pandasは色んな形式のファイルを簡単に読み込める。
CSVファイルを読み込む
import pandas as pd
# CSVファイルを読み込む
df = pd.read_csv('sales_data.csv')
# 最初の5行を表示
print(df.head())
# データの基本情報を確認
print(df.info())
# データの統計情報を確認
print(df.describe())
Excelファイルを読み込む
# Excelファイルを読み込む(特定のシートを指定)
df = pd.read_excel('sales_report.xlsx', sheet_name='Sheet1')
# 複数シートを読み込む
all_sheets = pd.read_excel('sales_report.xlsx', sheet_name=None)
これだけで、クライアントから送られてきたExcelやCSVデータをすぐに分析できる。

基本統計量の算出
データを読み込んだら、まず全体像を掴む。基本統計量を見れば、データの傾向が一発でわかる。
import pandas as pd
import numpy as np
# サンプルデータの作成
data = {
'日付': pd.date_range('2024-01-01', periods=30, freq='D'),
'売上': np.random.randint(50000, 200000, 30),
'来店客数': np.random.randint(50, 200, 30),
'客単価': np.random.randint(2000, 5000, 30)
}
df = pd.DataFrame(data)
# 基本統計量を一括で取得
print(df.describe())
# 個別に統計量を取得
print(f"売上の平均: {df['売上'].mean():.0f}円")
print(f"売上の中央値: {df['売上'].median():.0f}円")
print(f"売上の標準偏差: {df['売上'].std():.0f}円")
print(f"売上の最大値: {df['売上'].max():.0f}円")
print(f"売上の最小値: {df['売上'].min():.0f}円")
# 月別の集計
df['月'] = df['日付'].dt.to_period('M')
monthly = df.groupby('月')['売上'].agg(['sum', 'mean', 'count'])
print(monthly)
このコード、初案件でそのまま使った。クライアントが「すごい!今まで電卓で計算してた」って驚いてた。
欠損値の処理
実務のデータって、必ず欠損値(空白のデータ)がある。これを適切に処理しないと、分析結果がめちゃくちゃになる。
import pandas as pd
import numpy as np
# 欠損値を含むサンプルデータ
data = {
'商品名': ['A', 'B', 'C', 'D', 'E'],
'売上': [10000, np.nan, 15000, 12000, np.nan],
'在庫': [50, 30, np.nan, 40, 25]
}
df = pd.DataFrame(data)
print("元のデータ:")
print(df)
# 欠損値の確認
print("\n欠損値の数:")
print(df.isnull().sum())
# 欠損値を含む行を削除
df_dropna = df.dropna()
print("\n欠損値を含む行を削除:")
print(df_dropna)
# 欠損値を特定の値で埋める(例:0)
df_fillna = df.fillna(0)
print("\n欠損値を0で埋める:")
print(df_fillna)
# 欠損値を平均値で埋める
df['売上'].fillna(df['売上'].mean(), inplace=True)
print("\n売上の欠損値を平均値で埋める:")
print(df)
# 前の値で埋める(forward fill)
df_ffill = df.fillna(method='ffill')
print("\n前の値で埋める:")
print(df_ffill)
欠損値処理は、データ分析案件で必ず出てくる。これができるだけで、「ちゃんとデータ分析わかってる人」って評価される。
データのフィルタリングと並び替え
「売上が10万円以上のデータだけ見たい」「売上順に並び替えたい」…こういうリクエストは超よくある。
import pandas as pd
import numpy as np
# サンプルデータ
data = {
'商品名': ['商品A', '商品B', '商品C', '商品D', '商品E'],
'売上': [120000, 85000, 150000, 95000, 200000],
'カテゴリ': ['家電', '衣料', '家電', '食品', '家電'],
'在庫': [10, 50, 5, 30, 2]
}
df = pd.DataFrame(data)
# 売上が10万円以上のデータ
high_sales = df[df['売上'] >= 100000]
print("売上10万円以上:")
print(high_sales)
# カテゴリが「家電」のデータ
electronics = df[df['カテゴリ'] == '家電']
print("\n家電カテゴリ:")
print(electronics)
# 複数条件(売上10万円以上かつ在庫10以下)
filtered = df[(df['売上'] >= 100000) & (df['在庫'] <= 10)]
print("\n売上10万円以上かつ在庫10以下:")
print(filtered)
# 売上の降順で並び替え
sorted_df = df.sort_values('売上', ascending=False)
print("\n売上の降順:")
print(sorted_df)
# 複数列で並び替え(カテゴリ→売上の順)
multi_sorted = df.sort_values(['カテゴリ', '売上'], ascending=[True, False])
print("\nカテゴリ→売上の順:")
print(multi_sorted)
この辺のコードは、提案文のサンプルコードとしても使える。「こういう分析ができます」ってアピールできる。
データの集計・グループ化
「カテゴリ別の売上合計を知りたい」「月別の平均売上を出したい」…こういう集計作業が、データ分析案件の8割。
import pandas as pd
import numpy as np
# サンプルデータ
data = {
'日付': pd.date_range('2024-01-01', periods=100, freq='D'),
'商品': np.random.choice(['商品A', '商品B', '商品C'], 100),
'売上': np.random.randint(10000, 100000, 100),
'カテゴリ': np.random.choice(['家電', '衣料', '食品'], 100)
}
df = pd.DataFrame(data)
# カテゴリ別の売上合計
category_total = df.groupby('カテゴリ')['売上'].sum()
print("カテゴリ別売上合計:")
print(category_total)
# カテゴリ別の統計量(合計、平均、最大、最小)
category_stats = df.groupby('カテゴリ')['売上'].agg(['sum', 'mean', 'max', 'min', 'count'])
print("\nカテゴリ別統計量:")
print(category_stats)
# 月別の売上推移
df['月'] = df['日付'].dt.to_period('M')
monthly_sales = df.groupby('月')['売上'].sum()
print("\n月別売上:")
print(monthly_sales)
# カテゴリと商品の2軸で集計
pivot = df.groupby(['カテゴリ', '商品'])['売上'].sum().reset_index()
print("\nカテゴリ×商品別売上:")
print(pivot)
# ピボットテーブル(Excelのピボットテーブルと同じ)
pivot_table = df.pivot_table(
values='売上',
index='カテゴリ',
columns='商品',
aggfunc='sum',
fill_value=0
)
print("\nピボットテーブル:")
print(pivot_table)
ピボットテーブルは、クライアントへのレポート作成で超使う。Excelのピボットテーブルと同じことが、コードで自動化できる。

相関分析
「売上と広告費に関係はあるのか」「来店客数と客単価の相関は?」…こういう分析もPandasなら簡単。
import pandas as pd
import numpy as np
# サンプルデータ
data = {
'広告費': [100000, 150000, 80000, 200000, 120000, 90000, 180000],
'売上': [500000, 750000, 400000, 950000, 580000, 450000, 850000],
'来店客数': [150, 220, 120, 280, 180, 130, 250],
'客単価': [3333, 3409, 3333, 3393, 3222, 3462, 3400]
}
df = pd.DataFrame(data)
# 相関係数を計算
correlation = df.corr()
print("相関係数:")
print(correlation)
# 特定の2列の相関係数
ad_sales_corr = df['広告費'].corr(df['売上'])
print(f"\n広告費と売上の相関係数: {ad_sales_corr:.3f}")
# 相関が強いペアを探す
# 相関係数が0.7以上の組み合わせを抽出
corr_pairs = correlation.abs().unstack()
corr_pairs = corr_pairs[corr_pairs < 1] # 自分自身との相関を除外
strong_corr = corr_pairs[corr_pairs > 0.7].sort_values(ascending=False)
print("\n強い相関関係:")
print(strong_corr)
相関分析は、クライアントに「おっ、この人ちゃんと分析できるな」って思わせる武器。数字で関係性を示せる。
データの可視化
数字だけのレポートより、グラフがあった方が絶対にわかりやすい。Pandasは、簡単にグラフが作れる。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
# 日本語フォント設定(文字化け防止)
plt.rcParams['font.sans-serif'] = ['DejaVu Sans']
# サンプルデータ
dates = pd.date_range('2024-01-01', periods=30, freq='D')
data = {
'日付': dates,
'売上': np.random.randint(80000, 150000, 30),
'来店客数': np.random.randint(100, 200, 30)
}
df = pd.DataFrame(data)
df.set_index('日付', inplace=True)
# 折れ線グラフ
df['売上'].plot(kind='line', figsize=(10, 5), title='Daily Sales')
plt.ylabel('Sales (JPY)')
plt.grid(True)
plt.show()
# 棒グラフ
df['来店客数'].plot(kind='bar', figsize=(10, 5), title='Daily Visitors')
plt.ylabel('Visitors')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
# 複数の系列を同時にプロット
df.plot(kind='line', figsize=(10, 5), title='Sales and Visitors')
plt.ylabel('Value')
plt.grid(True)
plt.legend()
plt.show()
# ヒストグラム(分布を見る)
df['売上'].plot(kind='hist', bins=20, title='Sales Distribution', figsize=(8, 5))
plt.xlabel('Sales (JPY)')
plt.ylabel('Frequency')
plt.show()
# 箱ひげ図
df.plot(kind='box', figsize=(8, 5), title='Box Plot')
plt.ylabel('Value')
plt.show()
# 散布図(相関を見る)
plt.figure(figsize=(8, 5))
plt.scatter(df['来店客数'], df['売上'])
plt.xlabel('Visitors')
plt.ylabel('Sales (JPY)')
plt.title('Scatter Plot: Visitors vs Sales')
plt.grid(True)
plt.show()
可視化は、納品物のクオリティを一気に上げる。グラフ付きのレポートは、クライアントからの評価が段違いに高い。
応用:実務でよく使うパターン
実際の案件で使ってるコードを、そのまま公開する。
パターン1:売上レポートの自動生成
import pandas as pd
import numpy as np
from datetime import datetime
# データ読み込み(実際はクライアントから受け取ったファイル)
df = pd.read_csv('sales_data.csv', parse_dates=['日付'])
# 基本統計
total_sales = df['売上'].sum()
avg_sales = df['売上'].mean()
max_sales = df['売上'].max()
min_sales = df['売上'].min()
# レポート出力
report = f"""
売上レポート
生成日時: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}
【全期間サマリー】
総売上: {total_sales:,.0f}円
平均売上: {avg_sales:,.0f}円
最高売上: {max_sales:,.0f}円
最低売上: {min_sales:,.0f}円
【月別集計】
"""
# 月別集計
df['月'] = df['日付'].dt.to_period('M')
monthly = df.groupby('月')['売上'].agg(['sum', 'mean', 'count'])
report += monthly.to_string()
# レポートを保存
with open('sales_report.txt', 'w', encoding='utf-8') as f:
f.write(report)
print("レポートを保存しました: sales_report.txt")
print(report)
このコードで、初案件の納品物を作った。たった20行のコードで、クライアントが2週間かけてた作業が終わった。
パターン2:異常値の検出
import pandas as pd
import numpy as np
# サンプルデータ
df = pd.read_csv('sales_data.csv')
# 四分位数を使った異常値検出
Q1 = df['売上'].quantile(0.25)
Q3 = df['売上'].quantile(0.75)
IQR = Q3 - Q1
# 異常値の範囲
lower_bound = Q1 - 1.5 * IQR
upper_bound = Q3 + 1.5 * IQR
# 異常値を抽出
outliers = df[(df['売上'] < lower_bound) | (df['売上'] > upper_bound)]
print(f"正常範囲: {lower_bound:,.0f}円 ~ {upper_bound:,.0f}円")
print(f"異常値の数: {len(outliers)}件")
print("\n異常値の詳細:")
print(outliers)
# 異常値を除外したデータ
clean_data = df[(df['売上'] >= lower_bound) & (df['売上'] <= upper_bound)]
print(f"\nクリーンなデータ: {len(clean_data)}件")
異常値検出は、データの品質チェックで必須。これができると、「ちゃんとしたデータ分析者」って評価される。
Pandas学習ロードマップ:副業案件獲得まで
ここからは、Pandasを学んで副業案件を取るまでのロードマップを示す。私が実際に通った道。
ステップ1:Python基礎(1~2週間)
Pandasを学ぶ前に、Pythonの基礎は必須。といっても、難しいことは要らない。
最低限必要なPythonの知識:
- 変数、データ型(int, float, str, list, dict)
- 条件分岐(if文)
- ループ(for文、while文)
- 関数の定義と呼び出し
- リスト内包表記(あると便利)
学習リソース:
- Progate Python コース(無料~月980円)
- PyQ(月3,040円~)
- Udemy「現役シリコンバレーエンジニアが教えるPython入門」(セール時1,500円)
この段階で、簡単なプログラムが書ければOK。完璧を目指さなくていい。
ステップ2:Pandas基礎(1~2週間)
Python基礎ができたら、Pandasに集中する。
学ぶべき内容:
- DataFrameとSeriesの理解
- CSVファイルの読み込み・書き出し
- データの選択とフィルタリング
- 基本統計量の算出
- 欠損値処理
- groupby(グループ化と集計)
**学習リソー
:**
- Kaggle Learn - Pandas(無料、超実践的)
- Udemy「【世界で18万人が受講】実践 Python データサイエンス」(セール時1,500円)
- 公式ドキュメント(英語だけど例が豊富)
- YouTube「codexa」チャンネル(無料、日本語)
私の場合、毎日2時間勉強して、1週間で基本は理解できた。

ステップ3:実践プロジェクト(1~2週間)
学んだことを使って、実際にプロジェクトを作る。これがポートフォリオになる。
作るべきプロジェクト:
- 売上データ分析レポート
- Kaggleの公開データセットを使う
- 基本統計量、月別推移、カテゴリ別集計
- グラフを3~5個作成
- Jupyter NotebookでまとめてGitHubに公開
- データクリーニングツール
- 欠損値処理
- 異常値検出
- データ型の変換
- クリーンなCSVファイルを出力
- 簡単なダッシュボード
- Streamlitを使って、データを可視化するWebアプリ
- CSVをアップロードすると自動で分析結果を表示
私のポートフォリオ例:
- 「ECサイトの売上分析ノートブック」(GitHub)
- 「Airbnbデータの可視化ダッシュボード」(Streamlit Cloud)
これらを作って、クラウドソーシングのプロフィールに載せた。提案の採用率が5倍になった。
ステップ4:初案件獲得(2~4週間)
ポートフォリオができたら、案件に提案する。
狙うべき案件:
- 予算:5~15万円
- 納期:1~2週間
- 作業内容:データ分析レポート作成、Excelデータの集計
- 「初心者歓迎」「丁寧に教えます」と書いてある
避けるべき案件:
- 予算が異常に低い(3万円以下)
- 納期が短すぎる(3日以内)
- 要件が曖昧(「なんでもできる方」とか)
- 機械学習モデル構築(初心者には難しい)
提案文のコツ:
お世話になります。貴社のデータ分析案件、拝見いたしました。
【提案内容】
・売上データの基本統計量分析
・月別・カテゴリ別の推移分析
・視覚的にわかりやすいグラフ作成
・分析結果レポート(PDF形式)
【使用ツール】
Python(Pandas、Matplotlib)
【過去実績】
類似案件のポートフォリオ:[GitHubリンク]
データ分析ダッシュボード:[Streamlitリンク]
【スケジュール】
ヒアリング:1日
データ分析:3~5日
レポート作成:1~2日
合計:1週間以内に納品可能
ご検討のほど、よろしくお願いいたします。
この提案文で、私は3件提案して1件採用された。
ステップ5:案件の積み重ね(2~6ヶ月)
初案件をこなしたら、徐々に案件を増やしていく。
私の実績推移:
- 1ヶ月目:初案件1件(8万円)
- 2ヶ月目:案件2件(16万円)
- 3ヶ月目:案件3件+継続案件1件(28万円)
- 4ヶ月目:継続案件2件+新規2件(35万円)
- 5ヶ月目以降:継続案件3件で安定(月30~40万円)
重要なポイント:
- 最初の5件は実績作りと割り切る(単価安くてもOK)
- 評価を集める(4.5以上をキープ)
- 継続案件を狙う(納品時に次回の提案をする)
- ポートフォリオを随時更新
ステップ6:単価アップ(6ヶ月~)
実績ができたら、単価を上げる。
単価を上げる戦略:
- 専門性を出す
- 「EC業界のデータ分析専門」
- 「飲食店の売上分析専門」
- 専門性があると、単価は1.5~2倍になる
- 付加価値を提供
- レポートだけじゃなく、改善提案も付ける
- ダッシュボードを作って定期的にデータを見られるようにする
- 運用マニュアルを付ける
- スピードで勝負
- 「通常1週間のところ、3日で納品できます」
- 早く納品できる = 高単価を正当化できる
- 継続契約を提案
- 「月額15万円で、月次レポート + 相談対応します」
- クライアントは予算が立てやすい
- こちらも収入が安定する
これらを実践して、私の平均単価は:
- 開始時:時給4,000円
- 3ヶ月後:時給5,500円
- 6ヶ月後:時給7,000円
- 現在:時給8,500円
Pandas案件の探し方
クラウドソーシング
初心者が最初に使うべきプラットフォーム。
主要サービス:
- クラウドワークス(案件数2,500件以上)
- ランサーズ(案件数400件以上)
- ココナラ(スキル販売型)
クラウドソーシングのメリット:
- 初心者でも提案できる案件が多い
- 小規模案件から始められる
- 実績を積みやすい
デメリット:
- 競合が多い
- 単価が低め
- 手数料が高い(20%程度)
私は最初の3ヶ月はクラウドワークス中心で案件を取ってた。
副業エージェント
経験を積んだら、エージェントを使うべき。単価が圧倒的に高い。
主要エージェント:
- レバテックフリーランス(最大手、高単価)
- ITプロパートナーズ(週2日~、リモート案件豊富)
- Midworks(福利厚生が充実)
エージェントのメリット:
- 営業が不要(案件を紹介してくれる)
- 単価が高い(月30~80万円)
- 契約手続きを代行してくれる
- 継続案件が多い
エージェントに登録するタイミング:
- 実務経験半年以上
- ポートフォリオが3つ以上
- 週2日以上の稼働が可能
私がエージェントに登録したのは、副業開始から4ヶ月後。クラウドソーシングで8件くらい案件をこなしてから。
SNS・コミュニティ
意外と穴場なのが、SNSやコミュニティ経由の案件。
おすすめプラットフォーム:
- Twitter(X):「#副業募集」「#Python案件」で検索
- Qiita:技術記事を投稿して、DMで依頼が来ることも
- connpass:勉強会で人脈を作る
私の継続案件の1つは、Twitterで知り合った人からの紹介。直接契約だから、手数料ゼロ。

よくある質問(FAQ)
Q1: プログラミング未経験でもPandasは学べますか?
学べる。ただし、Pythonの基礎は先に学ぶ必要がある。
おすすめの学習順序:
- Pythonの基礎(1~2週間)
- Pandasの基礎(1~2週間)
- 実践プロジェクト(1~2週間)
合計1~1.5ヶ月で、初案件が取れるレベルに到達できる。
私がメンターしてる完全未経験の受講生も、2ヶ月で初案件を取ってる。
Q2: 数学が苦手でも大丈夫?
副業レベルなら、中学数学ができれば十分。
必要な数学:
- 四則演算(足し算、引き算、掛け算、割り算)
- 平均、中央値の理解
- 割合(パーセンテージ)の計算
- グラフの読み方
データ分析案件の9割は、これだけで対応できる。
機械学習を本格的にやるなら、もっと深い数学が必要になるけど、それは後から学べばいい。
Q3: どれくらいで稼げるようになりますか?
人による。でも、平均的には:
- 学習開始から初案件まで:1~2ヶ月
- 月5万円達成:2~4ヶ月
- 月10万円達成:4~6ヶ月
- 月20万円以上:6~12ヶ月
これは、毎日1~2時間学習した場合。
私の場合:
- 学習開始:2024年9月
- 初案件:2024年9月(1週間)
- 月10万円:2024年10月(1ヶ月)
- 月30万円:2025年2月(5ヶ月)
Q4: 本業が忙しくても大丈夫?
大丈夫。というか、Pandasの案件は、時間の融通が利きやすい。
理由:
- リモートワークが多い
- 納期に余裕がある案件が多い
- 週末だけでも対応できる
- 作業時間が短い(月10~20時間で月10~20万円も可能)
私の稼働時間:
- 平日夜:1~2時間 × 5日 = 5~10時間
- 土日:3~5時間 × 2日 = 6~10時間
- 合計:週11~20時間
本業に支障が出たことは一度もない。
Q5: Excelマクロ(VBA)とPandasどっちがいい?
Pandasの方が圧倒的に有利。
理由:
- 汎用性が高い
- Pythonは様々な分野で使える
- VBAはExcelでしか使えない
- 学習リソースが豊富
- Pythonの情報は膨大
- VBAは情報が少なくなってきてる
- 将来性がある
- Python/Pandasの需要は増え続けてる
- VBAの需要は減ってる
- 案件単価が高い
- Pandas案件:時給3,000~8,000円
- VBA案件:時給1,500~3,000円
VBAができても悪くないけど、これから学ぶなら絶対にPandas。
Q6: 機械学習も学ぶべき?
最初は不要。Pandasだけで十分稼げる。
機械学習を学ぶタイミング:
- Pandasで月10万円以上稼げるようになってから
- データ分析の基礎が完璧になってから
- より高単価な案件を狙いたいとき
実際、私は半年間Pandasだけで月30万円稼いでから、機械学習を学び始めた。
焦って機械学習に手を出すより、Pandasを極めた方が効率がいい。
Q7: Mac? Windows? どっちがいい?
どっちでもOK。ただし、開発環境はMacの方が若干楽。
私の場合:
- 最初:Windows(会社支給のPC)
- 今:Mac(副業収入で買った)
Windowsでも全く問題なく学習・案件対応できる。
Q8: おすすめの学習サイトは?
無料:
- Kaggle Learn(超実践的、英語)
- Google Colaboratory(環境構築不要)
- YouTube codexa チャンネル(日本語、わかりやすい)
有料:
- Udemy(セール時1,500円、コスパ最強)
- PyQ(月3,040円~、体系的)
- Progate(月980円、初心者向け)
私はKaggle LearnとUdemyで学んだ。合計5,000円くらい。
まとめ:次に取るべき一歩
ここまで読んでくれてありがとう。Pandasでデータ分析して副業で稼ぐ方法、理解できたんじゃないかな。
最後にもう一度、重要なポイントをまとめる:
Pandasを学ぶべき理由
- データ分析案件が爆発的に増えてる
- 学習コストが低い(1~2ヶ月で基礎習得)
- 案件単価が高い(時給3,000~8,000円以上)
- 他のスキルと組み合わせやすい
学習ロードマップ
- ステップ1:Python基礎(1~2週間)
- ステップ2:Pandas基礎(1~2週間)
- ステップ3:実践プロジェクト(1~2週間)
- ステップ4:初案件獲得(2~4週間)
- ステップ5:案件の積み重ね(2~6ヶ月)
- ステップ6:単価アップ(6ヶ月~)
稼げるまでの期間
- 初案件:1~2ヶ月
- 月10万円:4~6ヶ月
- 月30万円:6~12ヶ月
覚えるべきスキル
- データの読み込み(CSV、Excel)
- 基本統計量の算出
- 欠損値処理
- データのフィルタリング
- グループ化と集計
- 相関分析
- データ可視化
もしあなたが「副業で収入を増やしたい」「プログラミングスキルを活かしたい」「エンジニアとしてキャリアアップしたい」って思ってるなら、Pandasは最高の選択肢の一つ。
需要は高い、学習コストは低い、案件単価は高い、将来性がある。こんなに条件が揃ってるスキルは、他にない。
まずは、Pythonの基礎から始めてみてほしい。Progateでもいい、YouTubeでもいい、Udemyでもいい。とにかく、一歩を踏み出す。
その一歩が、半年後の月20万円の副業収入につながってる。
私も最初は不安だった。「本当に稼げるのか」「自分にできるのか」って。でも、やってみたら意外とできた。そして、人生が変わった。
あなたもできる。Pandasを学んで、データ分析案件を取って、副業収入を増やす。この記事が、その第一歩になれば嬉しい。
それじゃ、頑張って!
わからないことがあったら、一人で抱え込まないで。コミュニティに参加したり、メンターを見つけたり。
Pandasは、あなたのキャリアを変える力がある。
