Python Pandas - 基になるデータの次元数を取得する方法(index.ndim プロパティ)
Pandas の Index オブジェクトにおいて、基になるデータの次元数を取得するには、index.ndim プロパティを使用します。ndim は「number of dimensions(次元数)」の略で、Index オブジェクトは常に1次元のデータ構造であるため、このプロパティは 1 を返します。
必要なライブラリのインポート
まず、必要なライブラリをインポートします。
import pandas as pd
インデックスの作成
pd.Index() を使ってインデックスを作成します。
index = pd.Index([15, 25, 35, 45, 55])
インデックスの表示
作成したインデックスを表示します。
print("Pandas Index...\n", index)データの次元数を取得
ndim プロパティを使って、基になるデータの次元数を取得します。
print("\n次元数を返します...\n", index.ndim)完全なサンプルコード
以下に、Index オブジェクトのさまざまな属性を確認するコード例を示します。
import pandas as pd
# インデックスを作成
index = pd.Index([15, 25, 35, 45, 55])
# インデックスを表示
print("Pandas Index...\n", index)
# インデックス内のデータを表す配列を返す
print("\n配列...\n", index.values)
# 基になるデータの形状を表すタプルを返す
print("\n基になるデータの形状のタプル...\n", index.shape)
# データのバイト数を取得
print("\nバイト数を返します...\n", index.nbytes)
# データの次元数を取得
print("\n次元数を返します...\n", index.ndim)実行結果
上記のコードを実行すると、以下のような出力が得られます。
Pandas Index... Int64Index([15, 25, 35, 45, 55], dtype='int64') 配列... [15 25 35 45 55] 基になるデータの形状のタプル... (5,) バイト数を返します... 40 次元数を返します... 1
ポイントの解説
この例では、以下の重要な属性を確認できます。
values:インデックスのデータを NumPy 配列として返します。
shape:データの形状をタプルで返します。この例では要素が5個の1次元配列なので (5,) となります。
nbytes:データが占有するメモリのバイト数を返します。int64 型は1要素あたり8バイトなので、5要素で40バイトになります。
ndim:基になるデータの次元数を返します。Pandas の Index は常に1次元構造であるため、結果は必ず 1 になります。
ndim プロパティは、DataFrame(2次元)や Series(1次元)など、他の Pandas オブジェクトと次元数を比較・確認する際にも役立ちます。
-
【Python・Pandas】Indexがカテゴリデータを保持しているかどうかを確認する方法
PandasのIndex(インデックス)がカテゴリ型(category)のデータを保持しているかどうかを確認するには、index.is_categorical()メソッドを使用します。この記事では、実際のコード例と出力結果をもとに、具体的な手順をわかりやすく解説します。 事前準備:ライブラリのインポート まず、必要なライブラリであるPandasをインポートします。 import pandas as pd カテゴリ型のIndexを作成する astype()メソッドを使うと、既存のIndexのデータ型を「category」に変換できます。ここでは、文字列のリストからカテゴリ型のPandasインデッ
-
Python Pandas – IntervalArray内の各区間の中点をIndexとして取得する方法
IntervalArray内の各区間(Interval)の中点をIndexとして取得するには、array.midプロパティを使用します。このプロパティは、IntervalArrayに含まれる各区間の中点を要素とするIndexを返します。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pdIntervalオブジェクトの作成次に、2つのIntervalオブジェクトを作成します。「closed」パラメータに「both」を指定すると、両端を含む閉区間として設定されます。interval1 = pd.Interval(50, 75, closed=