PandasでExcelのような行列データからDataFrameを作成する方法を完全解説 初心者でもわかるデータフレーム作成入門
生徒
「Excelみたいな行と列のデータをPythonで扱いたいのですがどうすればいいですか」
先生
「PandasのDataFrameを使えば簡単に扱えます特に行列データから作る方法はとても基本です」
生徒
「行列データってどんな形ですか」
先生
「リストの中にリストが入った形ですExcelの表と同じイメージですね順番に見ていきましょう」
1. 行列データとは何か
Pandasで扱う行列データとはリストの中に複数のリストを持つ構造のことですこの形式はExcelの表と非常によく似ておりそれぞれの内側のリストが一行分のデータになりますPython データフレーム 行列という考え方を理解することでDataFrame作成の理解が一気に進みます
例えばテストの点数や売上データなど複数の値を一行としてまとめそれを複数行並べることで表形式のデータになりますこの構造をそのままPandasに渡すことで簡単にDataFrameを作ることができます
2. 基本的なDataFrame作成方法
行列データからDataFrameを作成する最も基本的な方法はリストのリストをDataFrame関数に渡すだけです非常にシンプルで初心者にも分かりやすい方法ですPandas DataFrame 作成 初心者におすすめの方法です
import pandas as pd
data = [
[10, 20, 30],
[40, 50, 60]
]
df = pd.DataFrame(data)
print(df)
0 1 2
0 10 20 30
1 40 50 60
このように列名やインデックスを指定しなくても自動的に設定されるためまずはこの形で理解を深めることが重要です
3. 列名を指定する方法
デフォルトでは列名は数字になりますが実務では意味のある名前を付けることが重要ですcolumnsを使うことで列名を自由に指定できますPandas DataFrame 列名 設定は必須スキルです
import pandas as pd
data = [
[100, 200],
[300, 400]
]
df = pd.DataFrame(data, columns=["売上", "利益"])
print(df)
売上 利益
0 100 200
1 300 400
列名を付けることでデータの意味が分かりやすくなり分析や処理がしやすくなります
4. インデックスを指定する方法
DataFrameでは行にラベルを付けるためにインデックスを指定することができますこれによりデータの識別がしやすくなりますPandas DataFrame インデックス 設定も基本操作の一つです
import pandas as pd
data = [
[1, 2],
[3, 4]
]
df = pd.DataFrame(data, index=["A", "B"])
print(df)
0 1
A 1 2
B 3 4
このようにインデックスを指定することでより意味のあるデータ構造になります
5. 一行目を列名として使う方法
Excelのようなデータでは最初の行がヘッダーになっていることがありますその場合は一行目を列名として扱うことができますPandas 行列 データフレーム 作成でよく使われるテクニックです
import pandas as pd
data = [
["名前", "年齢"],
["田中", 20],
["佐藤", 25]
]
df = pd.DataFrame(data[1:], columns=data[0])
print(df)
名前 年齢
0 田中 20
1 佐藤 25
この方法を使うことでExcel形式のデータをそのまま扱うことができます
6. NumPy配列との違い
行列データはNumPy配列と似ていますがリストを使うことで柔軟に扱える点が特徴ですNumPyは数値計算に強くPandasはデータ処理に強いため用途に応じて使い分けることが重要です
Pandas DataFrame NumPy 違いを理解しておくことでデータ分析の効率が大きく向上します
7. 実務での活用例
実務ではCSVデータやExcelデータを読み込む前の段階で一時的に行列データとして扱うことがありますまたテストデータを作る際にもこの方法は非常に便利ですPandas DataFrame 行列 作成は実務で頻繁に使われる基本スキルです
例えば売上一覧やログデータなどを簡単に表形式に変換して確認する場合に非常に役立ちます
8. 初心者がつまずきやすいポイント
初心者がよくつまずくのは行と列の向きを間違えることですリストの中のリストが一行として扱われることをしっかり理解しておきましょうまた列数が揃っていない場合はエラーになることもあるため注意が必要です
Pandas DataFrame 作成 行列 データを扱う際にはデータ構造を確認する習慣をつけることが重要です
まとめ
今回はPandasでExcelのような行列データからDataFrameを作成する方法について詳しく確認してきました行列データとはリストの中にリストが入っている構造でありそれぞれの内側のリストが一行分のデータになるという基本をしっかり理解することが重要ですこの考え方を理解しておくことでPythonでのデータ処理やデータ分析の幅が大きく広がります
特にPandas DataFrame 作成方法として行列データを使う方法は非常にシンプルであり初心者でもすぐに使えるのが大きな特徴ですリストのリストをそのままDataFrame関数に渡すだけで簡単に表形式のデータを作ることができるためまずはこの方法をしっかり身につけることが大切です
また列名を指定する方法やインデックスを設定する方法を理解することでデータの意味を明確にすることができます単にデータを並べるだけでなくどの列が何を表しているのかどの行がどのデータなのかを意識することでより実践的なデータ操作が可能になります
さらにExcel形式のデータを扱う際には一行目を列名として利用する方法も重要ですこの方法を覚えておくことでCSVデータやExcelデータを扱うときにスムーズにDataFrameへ変換することができるようになります実務ではこのような形式のデータを扱うことが非常に多いため必ず覚えておきたいポイントです
行列データとNumPy配列の違いについても理解しておく必要がありますNumPyは数値計算に特化しておりPandasはデータの整理や分析に強いという特徴がありますそれぞれの役割を理解して使い分けることで効率的なデータ処理ができるようになります
また初心者がつまずきやすいポイントとして行と列の向きを間違えてしまうことやデータの列数が揃っていないことがありますこれらはエラーの原因になるためDataFrameを作成する前にデータ構造をしっかり確認する習慣をつけることが重要です
実務においてはこの行列データからDataFrameを作成する方法は非常に多くの場面で活用されます例えばテストデータの作成や一時的なデータ確認CSV読み込み前のデータ整形などさまざまな場面で役立ちますそのためPandas DataFrame 行列 作成方法をしっかり理解しておくことはデータ分析の基礎として非常に重要です
今回の内容を通してPandas DataFrame 作成の基本となる考え方を身につけることができれば今後のデータ分析や機械学習においてもスムーズにステップアップすることができるようになりますまずはシンプルな行列データから始めて徐々に応用へと進んでいくことをおすすめします
サンプルプログラムで復習する
最後に基本的なDataFrame作成の流れをもう一度確認しておきましょう
import pandas as pd
data = [
[1, 2, 3],
[4, 5, 6]
]
df = pd.DataFrame(data, columns=["A", "B", "C"])
print(df)
A B C
0 1 2 3
1 4 5 6
このように行列データから簡単にDataFrameを作成できることを確認しておきましょう
生徒
「行列データからDataFrameを作る方法がよく分かりましたリストの中のリストが一行になるんですね」
先生
「その通りですPandas DataFrame 作成ではこの考え方が基本になります」
生徒
「列名やインデックスも自分で設定できるのが便利ですね」
先生
「はいデータの意味を分かりやすくするためにも必ず意識して設定しましょう」
生徒
「Excelのようなデータもそのまま扱えるのがすごいです」
先生
「一行目を列名にする方法を覚えておけば実務でもすぐに使えます」
生徒
「これからはデータの形を意識して扱うようにします」
先生
「それがとても大切ですPandasとNumPyをうまく使い分けながらデータ処理を進めていきましょう」