「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > さまざまな長さの配列を含むディクショナリから Pandas データフレームを作成するにはどうすればよいですか?

さまざまな長さの配列を含むディクショナリから Pandas データフレームを作成するにはどうすればよいですか?

2024 年 11 月 11 日に公開
ブラウズ:160

How to Create a Pandas Dataframe from a Dictionary with Arrays of Varying Lengths?

可変長の配列を含むディクショナリからのデータフレームの作成

提示された課題は、可変長の numpy 配列で構成される列を含むデータフレームを生成することです辞書から抽出された値。これを実現するには、Python を使用したソリューションを検討してみましょう。

Python 3.x 以降では、次のコード スニペットを使用できます:

import pandas as pd
import numpy as np

# Define a dictionary with key-value pairs representing numpy arrays
d = {
    "A": np.random.randn(10),
    "B": np.random.randn(12),
    "C": np.random.randn(8)
}

# Create a dataframe by converting each key-value pair to a series
df = pd.DataFrame(
    dict([
        (k, pd.Series(v))
        for k, v in d.items()
    ])
)

# Display the resulting dataframe
print(df)

このコードは、列 "A"、"B"、および "C" を持つデータフレームを作成します。各列には、ディクショナリからの対応する numpy 配列値が保持されます。配列の長さが異なる場合は、自動的に配列が整列され、NaN 値をパディングとして短い配列を拡張します。

Python 2.x では、若干の変更が必要です:

import pandas as pd
import numpy as np

# Define a dictionary with key-value pairs representing numpy arrays
d = {
    "A": np.random.randn(10),
    "B": np.random.randn(12),
    "C": np.random.randn(8)
}

# Create a dataframe by converting each key-value pair to a series
df = pd.DataFrame(
    dict([
        (k, pd.Series(v))
        for k, v in d.iteritems()
    ])
)

# Display the resulting dataframe
print(df)

Python 2.x では、items() の代わりに iteritems() 関数を使用して、辞書内のキーと値のペアを反復処理します。

このアプローチを利用すると、異なる長さの配列を含む列を含むデータフレームを簡単に作成でき、データが適切に位置合わせされて処理されるようにすることができます。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3