ホームページ  >  記事  >  バックエンド開発  >  Pandas エラー「ValueError: 重複した軸からインデックスを再作成できません」の原因は何ですか?

Pandas エラー「ValueError: 重複した軸からインデックスを再作成できません」の原因は何ですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-23 16:26:02447ブラウズ

What Causes the Pandas Error

「ValueError: 重複した軸からインデックスを再作成できません」について

Python の Pandas ライブラリでは、このエラー メッセージは操作を実行できないことを示しますデータ構造には、参照される軸に重複した値が含まれているためです。

エラーの原因

具体的には、データフレームまたはシリーズのインデックスを代入して再インデックスしようとすると、エラーが発生します。既存のインデックスを使用した新しい行または列。インデックスの再作成にはインデックス ラベルの変更が含まれます。重複したラベルが存在すると、操作を対応するデータに一意にマッピングすることができなくなります。

サンプル シナリオ

これを説明するにはエラーが発生した場合は、列名が重複している Pandas DataFrame を検討してください。これがどのように発生するかを示す Python スニペットを次に示します:

<code class="python">import pandas as pd

df = pd.DataFrame({
    "ID": [1, 2, 3],
    "Name": ["Alice", "Bob", "Charlie"],
    "Score": [90, 80, 70],
    "Age": [25, 26, 27]
})

df["Score"] = df["Score"] * 2
df["Age"] = df["Age"] + 1

# Attempt to create a duplicate column
df["Score"] = df["Score"] * 1.1</code>

このスニペットを実行すると、次のエラーが発生します:

ValueError: cannot reindex from a duplicate axis

これは、DataFrame がすでに「Score」という名前の列があり、同じ名前を使用して新しい値を割り当てようとしています。列が重複しているため、Pandas は列のインデックスを正常に再作成できません。

解決策

このエラーを解決するには、インデックスの再作成に使用されるインデックス値が一意であることを確認する必要があります。既存の行または列に割り当てる場合、ラベルの重複を避けることになります。重複した値が意図せず導入された場合は、.duplicated() メソッドを使用してインデックスを確認し、それに応じて重複を削除できます。

以上がPandas エラー「ValueError: 重複した軸からインデックスを再作成できません」の原因は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。