Python Pandas - インデックスに一意の値があるかどうかを確認する方法
Pandasのインデックスに一意(ユニーク)な値が含まれているかどうかを確認するには、index.is_uniqueプロパティを使用します。このプロパティは、インデックス内のすべての値が重複なく一意である場合にTrueを返し、重複が1つでも存在する場合はFalseを返します。
基本的な使い方
まず、必要なライブラリをインポートします。
import pandas as pd
次に、確認用のインデックスを作成します。
index = pd.Index([50, 40, 30, 20, 10])
作成したインデックスを表示します。
print("Pandas Index...\n", index)
is_uniqueプロパティを使って、インデックスが一意の値を持つかどうかを確認します。
print("\nIs the Pandas index having unique values?\n", index.is_unique)
完全なコード例
以下は、ここまでの手順をまとめたサンプルコードです。
import pandas as pd
# インデックスの作成
index = pd.Index([50, 40, 30, 20, 10])
# インデックスの表示
print("Pandas Index...\n", index)
# Index内のデータを表す配列を返す
print("\nArray...\n", index.values)
# インデックスが一意の値を持つかどうかを確認
print("\nIs the Pandas index having unique values?\n", index.is_unique)
出力結果
上記のコードを実行すると、以下のような出力が得られます。
Pandas Index... Int64Index([50, 40, 30, 20, 10], dtype='int64') Array... [50 40 30 20 10] Is the Pandas index having unique values? True
この例では、インデックスの値(50, 40, 30, 20, 10)に重複がないため、is_uniqueはTrueを返しています。
重複した値が含まれる場合の挙動
参考として、インデックスに重複した値が含まれている場合の動作も確認しておきましょう。
import pandas as pd
# 重複する値(30)を含むインデックスを作成
index_dup = pd.Index([50, 40, 30, 30, 10])
print("Is the Pandas index having unique values?\n", index_dup.is_unique)
実行すると、以下のようにFalseが出力されます。
Is the Pandas index having unique values? False
このように、is_uniqueプロパティを使えば、データ分析の前処理段階でインデックスの一意性を簡単に検証できます。特に、インデックスをキーとして結合(mergeやjoin)を行う場合や、ユニークなラベルが前提となる操作を行う前にチェックしておくと便利です。
-
【Python・Pandas】Indexがカテゴリデータを保持しているかどうかを確認する方法
PandasのIndex(インデックス)がカテゴリ型(category)のデータを保持しているかどうかを確認するには、index.is_categorical()メソッドを使用します。この記事では、実際のコード例と出力結果をもとに、具体的な手順をわかりやすく解説します。 事前準備:ライブラリのインポート まず、必要なライブラリであるPandasをインポートします。 import pandas as pd カテゴリ型のIndexを作成する astype()メソッドを使うと、既存のIndexのデータ型を「category」に変換できます。ここでは、文字列のリストからカテゴリ型のPandasインデッ
-
Python Pandas:Indexがブール値のみで構成されているかどうかを確認する方法
PandasのIndexがブール値(True / False)のみで構成されているかどうかを確認するには、index.is_boolean()メソッドを使用します。このメソッドは、インデックス内のすべての要素がブール型である場合にTrueを返し、それ以外の場合はFalseを返します。必要なライブラリのインポートまず、必要なライブラリをインポートします。import pandas as pdPandasインデックスの作成ブール値を含むPandasインデックスを作成します。index = pd.Index([True, True, False, False, True, True, True])イ