PythonのPandasのデータ型の確認方法について

Python,イメージ

AI実装検定のご案内

Pandasで「データ型(dtype)」を確認する方法はいくつかあり、用途によって使い分けることができます。

ここでは 基本的な確認方法 → 個別要素レベル → 詳細情報 の順で整理して詳しく解説します。

目次

DataFrame全体のデータ型を確認する方法

最も一般的なのは .dtypes 属性を使う方法です。

import pandas as pd

df = pd.DataFrame({
    "id": [1, 2, 3],
    "name": ["Alice", "Bob", "Charlie"],
    "score": [85.5, 92.0, 88.0],
    "passed": [True, True, False]
})

print(df.dtypes)

出力例

id          int64
name       object
score     float64
passed       bool
dtype: object

各カラムのデータ型がわかります。

object は文字列や混合型を表す場合が多いです。

特定のカラムのデータ型を確認する

個別に見たい場合は、カラムを指定して .dtype を確認します。

print(df["score"].dtype)  # float64
print(df["name"].dtype)   # object

要素単位で型を確認する

Pythonの組み込み関数 type() を使うと、特定のセルの型を確認できます。

print(type(df["score"][0]))   # <class 'numpy.float64'>
print(type(df["name"][0]))    # <class 'str'>

Pandasの数値は多くの場合 numpy の型(numpy.int64, numpy.float64など)になっています。

DataFrameの構造をまとめて確認する (info)

.info() を使うと、行数・列数・欠損値・データ型が一度に分かります。

df.info()

出力例

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 4 columns):
 #   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  
 0   id      3 non-null      int64  
 1   name    3 non-null      object 
 2   score   3 non-null      float64
 3   passed  3 non-null      bool   
dtypes: bool(1), float64(1), int64(1), object(1)
memory usage: 211.0+ bytes

.dtypes より詳細で、データの全体像を把握するのに便利です。

特殊なケースでのデータ型確認

文字列カラムを厳密に扱いたい場合

Pandas 1.0以降では string dtype が導入されています。

object ではなく string に変換したい場合は

df["name"] = df["name"].astype("string")
print(df["name"].dtype)  # string

datetime型

日時データの場合は datetime64[ns] として表示されます。

もし文字列として読み込まれてしまったら、pd.to_datetime() で変換可能です。

df["date"] = pd.to_datetime(["2024-01-01", "2024-05-20", "2024-08-10"])
print(df["date"].dtype)  # datetime64[ns]

dtype確認のまとめ

  • 全体を確認df.dtypes
  • カラム単位df["col"].dtype
  • 要素単位type(df["col"][i])
  • 詳細情報込みdf.info()

補足ですが、マーケティングデータ(広告レポートやアクセス解析データなど)を扱う場合、日付やカテゴリ型(category)をうまく指定するとメモリ効率や処理速度が向上します。

以上、Pandasのデータ型の確認方法についてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次