45395 - シコウサクゴ -

pandasワンライナーでParquetデータを即座に検証するテクニック集

2026-04-08
プログラミング
Python
pandas
Parquet
データ検証
ワンライナー
Last updated:2026-04-09
5 Minutes
942 Words

Parquetファイルの中身を確認するためにJupyter Notebookを起動するのは大げさすぎる。python -c のワンライナーなら、ターミナルから即座にデータを検証できます。

本記事では、データ分析プロジェクトで日常的に使っているワンライナー集を紹介します。Claude Code内でのBashツールからも直接実行できるため、AI駆動開発とも相性が良いテクニックです。


基本操作:データの中身を確認する

先頭N行を表示

最も基本的な確認。ファイルの構造とデータの雰囲気を掴みます。

Terminal window
1
python -c "
2
import pandas as pd
3
df = pd.read_parquet('path/to/file.parquet')
4
print(df.head(10))
5
"

カラム一覧と型を表示

Terminal window
1
python -c "
2
import pandas as pd
3
df = pd.read_parquet('path/to/file.parquet')
4
print(df.dtypes)
5
print(f'\nカラム数: {len(df.columns)}')
6
print(f'行数: {len(df)}')
7
"

データフレームの基本統計量

Terminal window
1
python -c "
2
import pandas as pd
3
df = pd.read_parquet('path/to/file.parquet')
4
print(df.describe())
5
"

構造確認:スキーマとメタデータ

Parquetのスキーマを直接確認

pandasを経由せず、pyarrowでParquetのスキーマ情報を確認できます。

Terminal window
1
python -c "
2
import pyarrow.parquet as pq
3
schema = pq.read_schema('path/to/file.parquet')
4
print(schema)
5
"

ファイルサイズと行グループ情報

Terminal window
1
python -c "
2
import pyarrow.parquet as pq
3
pf = pq.ParquetFile('path/to/file.parquet')
4
print(f'行グループ数: {pf.metadata.num_row_groups}')
5
print(f'総行数: {pf.metadata.num_rows}')
6
print(f'カラム数: {pf.metadata.num_columns}')
7
"

データ検証:品質チェック

NULL値の確認

Terminal window
1
python -c "
2
import pandas as pd
3
df = pd.read_parquet('path/to/file.parquet')
4
null_counts = df.isnull().sum()
5
print(null_counts[null_counts > 0])
6
if null_counts.sum() == 0:
7
print('NULL値なし')
8
"

重複行の確認

Terminal window
1
python -c "
2
import pandas as pd
3
df = pd.read_parquet('path/to/file.parquet')
4
dup_count = df.duplicated().sum()
5
print(f'重複行: {dup_count}')
6
if dup_count > 0:
7
print(df[df.duplicated(keep=False)].head(10))
8
"

日付範囲の確認

時系列データでは日付範囲の確認が頻繁に必要です。

Terminal window
1
python -c "
2
import pandas as pd
3
df = pd.read_parquet('path/to/file.parquet')
4
date_col = 'date' # 日付カラム名を指定
5
print(f'最古: {df[date_col].min()}')
6
print(f'最新: {df[date_col].max()}')
7
print(f'期間: {df[date_col].max() - df[date_col].min()}')
8
"

応用:フラグ集計と異常値検出

boolカラムの集計

データにフラグ(True/False)カラムがある場合、検出数と割合を一括確認できます。

Terminal window
1
python -c "
2
import pandas as pd
3
df = pd.read_parquet('path/to/file.parquet')
4
# boolカラムの集計
5
bool_cols = df.select_dtypes(include='bool').columns
6
for col in bool_cols:
7
true_count = df[col].sum()
8
print(f'{col}: {true_count}件 ({true_count/len(df)*100:.2f}%)')
9
"

数値カラムの異常値チェック

前日比の変動率で外れ値を検出する例です。

Terminal window
1
python -c "
2
import pandas as pd
3
df = pd.read_parquet('path/to/file.parquet')
4
target_col = 'value' # 対象カラム名を指定
5
df['change_pct'] = df[target_col].pct_change() * 100
6
outliers = df[df['change_pct'].abs() > 10] # 10%以上の変動
7
print(f'異常変動: {len(outliers)}件')
8
if len(outliers) > 0:
9
print(outliers[['date', target_col, 'change_pct']].head(10))
10
"

ファイル命名規則の活用

Parquetファイルを大量に扱うプロジェクトでは、命名規則が重要です。たとえば以下のような構成にしておくと、シェルのglob展開で特定の条件のファイルを素早く絞り込めます。

1
data/
2
├── analytics_daily/
3
│ └── report_typeA_1308_2025-07-25.parquet
4
├── analytics_weekly/
5
│ └── report_typeB_5386_2025-07-18.parquet
6
└── ...
Terminal window
1
# 特定の分析種別のファイル一覧
2
ls data/analytics_daily/report_typeA_*

Claude Code内での活用

Claude CodeのBashツールから直接これらのワンライナーを実行できるため、AIとの対話の中でデータの状態を即座に確認できます。

1
人間: 「分析結果のParquetファイルの中身を確認して」
2
AI: python -c "..." を実行
3
AI: 「3,200行のデータで、フラグカラムのTrue件数は23件です」

ワンライナーのメリットは、Jupyter NotebookやREPLを起動する必要がなく、コマンド一発で結果が得られることです。Claude Codeとの組み合わせでは特に、確認→修正→再確認のサイクルを高速に回せます。


複数ファイルの一括検証

Terminal window
1
python -c "
2
import pandas as pd
3
from pathlib import Path
4
5
target_dir = Path('data/analytics_daily')
6
parquet_files = list(target_dir.glob('*.parquet'))
7
print(f'ファイル数: {len(parquet_files)}')
8
9
for f in parquet_files[:5]: # 先頭5ファイルのみ表示
10
df = pd.read_parquet(f)
11
print(f'{f.name}: {len(df)}行, {len(df.columns)}列')
12
"

まとめ

用途コマンド
先頭N行表示df.head(10)
カラム型確認df.dtypes
NULL値チェックdf.isnull().sum()
重複チェックdf.duplicated().sum()
日付範囲確認df[col].min() / df[col].max()
フラグ集計df.select_dtypes(include='bool')
スキーマ確認pq.read_schema(path)

python -c ワンライナーは、Parquetに限らずCSVやJSONの検証にも応用できます。ターミナルから離れずにデータを確認する習慣をつけると、開発のテンポが格段に上がります。

Article title:pandasワンライナーでParquetデータを即座に検証するテクニック集
Article author:45395
Release time:2026-04-08

記事へのご質問・ご感想をお聞かせください

フィードバックを送る