Phase 1 では、Pythonの基礎として、変数・型・演算、リストと辞書、条件分岐と繰り返し、関数、ファイル読み込み、エラー、Jupyter Notebook などを整理してきました。ここまでで、コードを書くための土台は一通りそろっています。次に必要になるのは、それらの基礎が「データを扱うこと」とどうつながるのかを整理することです。

Phase 2 では、いよいよ NumPypandas を使いながら、実際のデータを読み込み、整え、確認していきます。その前に、Pythonでデータを扱うとはどういうことかを一度言葉にしておくと、次の内容にかなり入りやすくなります。

この記事で整理すること

  • 1つの値から複数の値へ、という見方
  • 複数の値から表形式データへ、という流れ
  • リスト・辞書と pandas のつながり
  • Phase 2 で何を扱うのか

目的は、新しい文法を増やすことではありません。ここまで学んだ基礎が、次のデータ処理につながっていく流れを明確にすることです。

Pythonでデータを扱うとは何を意味するのか

Pythonでデータを扱うとは、単に数値を計算することではありません。データを読み込み、その形を確認し、必要に応じて整え、そこから意味のある情報を取り出せる形にすることです。

つまり、データを扱うとは「値を持つ」ことではなく、「複数の値のまとまりを、目的に応じて読み、整理し、処理すること」だと考える必要があります。この感覚に切り替わるところで、Phase 1 の文法学習は初めて次の段階につながります。

ここまでは Python の書き方そのものを学んできましたが、ここから先は Python を道具として使い、実際のデータに向き合うことになります。

1つの値を扱うところから始まった

最初の段階では、Pythonの中で1つの値を扱っていました。変数に数値や文字列を入れ、型を確認し、演算を行うという流れです。

score = 75 name = "Aki" 
print(score)
print(name)

この段階では、扱っている情報は単独の値です。もちろん、これは基礎として重要ですが、実際のデータ分析では1つの値だけを見て終わることはほとんどありません。

そのため、次に必要になるのが、複数の値をまとめて扱う考え方です。

複数の値を扱うためにリストと辞書が必要になった

Phase 1 では、複数の値をまとめて持つ仕組みとして、リストと辞書を学びました。これは、データを扱うための最初の形です。

scores = [70, 82, 91, 65] 
student = {"name": "Aki", "score": 82}

リストは、順番つきで複数の値を持つための仕組みです。辞書は、名前と値を対応させて持つための仕組みです。どちらも、1つの値だけでは足りなくなったときに必要になります。

この段階で重要なのは、Pythonでデータを扱うときには、最初から「複数の値」を前提に考えることが多いという点です。単独の値ではなく、値の集まりとして見る感覚が必要になります。

複数の値だけではまだ足りない

ただし、実際のデータは、単なるリスト1本で表せるとは限りません。たとえば、学生データを考えると、名前、点数、学年、出席状況など、複数の項目を同時に持つことが多いです。

このようなデータでは、「複数の値」だけでなく、「複数の項目」が必要になります。つまり、1列だけではなく、複数列のデータを扱う必要が出てきます。

ここで初めて、表形式データという考え方が重要になります。

表形式データとは何か

表形式データは、行と列を持つデータです。Excel の表や CSV ファイルを思い浮かべるとわかりやすいです。1行が1つの観測や記録を表し、列が項目を表します。

たとえば、学生ごとの名前と点数を持つデータは、次のような形を考えられます。

name score Aki 82 Mina 91 Taro 65

このような形になると、単純なリストや辞書だけでは少し扱いにくくなります。もちろん無理に表すことはできますが、行と列を意識して扱える仕組みがほしくなります。

そこで使うのが、pandasDataFrame です。

リストと辞書は DataFrame の前段階として理解できる

DataFrame は、表形式データを扱うための仕組みです。そして、その考え方は、すでに学んだリストや辞書と無関係ではありません。

たとえば、列ごとに値の集まりを持つという見方をすると、リストの考え方がそのまま使えます。また、列名とその中身を対応させるという見方をすると、辞書の感覚ともつながります。

実際、辞書の中にリストを入れる形は、表形式データを考えるときの入口としてかなり自然です。

data = { "name": ["Aki", "Mina", "Taro"], "score": [82, 91, 65] }

この形を見ると、列名と列データが対応していることがわかります。つまり、Phase 1 で学んだリストと辞書は、Phase 2 で扱う DataFrame の前段階として理解できます。

ここまで学んだ文法はどこで使われるのか

Phase 1 で学んだ内容は、Phase 2 に入るとすべて使います。変数はデータを一時的に持つために使います。型の理解は、数値と文字列の違いを見分けるために必要です。リストと辞書は、データ構造の基本としてそのまま出てきます。

if 文は条件による分岐に使い、for 文は繰り返し処理に使います。関数は処理をまとめるために使います。ファイル読み込みは、CSV などの外部データを取り込む出発点になります。エラーの読み方と Jupyter Notebook の使い方も、実際にデータを扱い始めるとますます重要になります。

つまり、Phase 1 は単なる準備ではなく、Phase 2 の土台そのものです。ここまでの内容が、そのまま次の学習の前提になります。

Phase 2 では何を扱うのか

Phase 2 では、Pythonの文法そのものよりも、データをどのように読み込み、どのように整え、どのように確認するかに重点を移します。

具体的には、NumPy で配列の感覚をつかみ、pandas で表形式データを扱うことになります。そして、CSVファイルを読み込み、列や行を確認し、必要な部分を取り出し、欠損値や前処理にも触れていきます。

つまり、Phase 2 では「Pythonを学ぶ」から「Pythonでデータを扱う」へと重心が移ります。この切り替えをはっきり意識しておくことが重要です。

よくある混乱

ここでは、Phase 1 から Phase 2 へ進むときに混乱しやすい点を整理しておきます。

  • 文法を覚えればそのまま分析できると思ってしまう
  • リストや辞書と表形式データの違いが曖昧になる
  • データの「中身」だけを見て、「形」を意識しない
  • pandas をまったく新しいものだと感じてしまう

特に大事なのは、データの内容だけでなく、その構造や形を意識することです。数値が入っていることだけでは足りません。何行あり、何列あり、どの列が何を表しているのかという見方が必要になります。

また、pandas は完全に別世界の道具というより、Phase 1 で学んだ複数の値の扱い方を、表形式データに広げたものとして理解したほうが入りやすくなります。

今の段階で押さえるべきこと

現時点で必要なのは、pandas の操作を先回りして覚えることではありません。まずは、データを扱うとは「複数の値のまとまりを、形を意識しながら処理すること」だと理解することが重要です。

そのうえで、単独の値からリストや辞書へ、そして表形式データへと見方が広がっていく流れを押さえておく必要があります。ここが整理できると、Phase 2 にかなり入りやすくなります。

次に学ぶこと

ここまでで、Pythonでデータを扱うとはどういうことかを整理しました。次の Phase 2 では、この流れを実際のデータ処理の形にしていきます。

まずは、NumPypandas がどのような役割を持つのかを整理し、表形式データを読み込むところから始めるのが自然です。ここから、いよいよデータサイエンスらしい作業に入っていきます。

まとめ

Pythonでデータを扱うとは、単に値を計算することではなく、複数の値のまとまりを、形を意識しながら読み、整理し、処理することです。Phase 1 で学んだ変数、リスト、辞書、関数、ファイル読み込みなどは、そのための土台でした。

また、リストや辞書の考え方は、この先の pandasDataFrame にもつながっています。この流れを押さえておけば、Phase 2 で扱うデータ処理も、ばらばらな操作ではなく、ひとつながりのものとして理解しやすくなります。