PythonのPandasの列数の取得方法について

Python,イメージ

AI実装検定のご案内

Pandasで「列数」を取得する方法はいくつかあります。

シーンに応じて最適な方法が変わるので、それぞれ詳しく解説します。

目次

shape を使う方法

最もシンプルでよく使われる方法です。

import pandas as pd

df = pd.DataFrame({
    "A": [1, 2, 3],
    "B": [4, 5, 6],
    "C": [7, 8, 9]
})

print(df.shape)       # (3, 3)
print(df.shape[1])    # 列数 = 3
  • df.shape(行数, 列数) のタプルを返します。
  • そのうち df.shape[1] が列数です。

メリット: 高速で直感的。
デメリット: shape[0] と混同しやすい。

len(df.columns) を使う方法

列ラベル(Index)の数を数える方法です。

print(len(df.columns))  # 3
  • df.columns は列名のIndexを返します。
  • len() をかけると列数になります。

メリット: 「列ラベルの数」という意味が明確。
デメリット: 若干冗長。

df.columns.size を使う方法

同じく列Indexを利用したやり方ですが、size 属性を直接参照できます。

print(df.columns.size)  # 3
  • 内部的には len(df.columns) とほぼ同じです。

df.info() で確認する方法(概要チェック向け)

厳密に列数をコードで扱うというより、「確認したい」場合に有効です。

df.info()

出力例

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 3 columns):
 #   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   A       3 non-null      int64
 1   B       3 non-null      int64
 2   C       3 non-null      int64
dtypes: int64(3)
memory usage: 200.0 bytes

ここで Data columns (total 3 columns): の部分に列数が表示されます。

実用的な使い分け

  • コード処理で列数を変数として使う
    df.shape[1]len(df.columns) がベスト
  • デバッグやデータ確認
    df.info()
  • 可読性重視(他人と共有するコード)
    len(df.columns)(「列数を数えている」と分かりやすい)

まとめ

方法特徴
df.shape[1]print(df.shape[1])最速・シンプル
len(df.columns)print(len(df.columns))可読性が高い
df.columns.sizeprint(df.columns.size)len とほぼ同じ
df.info()df.info()確認用に便利

以上、PythonのPandasの列数の取得方法についてでした。

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

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