Bagaimana untuk Mencipta Pandas DataFrame daripada Kamus dengan Panjang Array yang Berbeza-beza?

Barbara Streisand
Lepaskan: 2024-11-10 14:20:03
asal
1033 orang telah melayarinya

How to Create a Pandas DataFrame from a Dictionary with Varying Array Lengths?

Mencipta DataFrames daripada Kamus dengan Panjang Entri Tidak Sekata

Dalam Python, adalah mungkin untuk mencipta DataFrame daripada kamus yang setiap entri memegang tatasusunan Numpy. Walau bagaimanapun, cabaran timbul apabila panjang tatasusunan berbeza antara entri. Secara lalai, Pandas memerlukan tatasusunan panjang seragam, yang membawa kepada ralat seperti "ValueError: tatasusunan mestilah sama panjang."

Mengatasi Percanggahan Panjang

Untuk menangani isu ini, kita boleh memanfaatkan keupayaan Panda untuk menggunakan nilai NaN (Bukan-Nombor) sebagai ruang letak untuk data yang hilang. Dengan menggunakan ini, kami boleh mencipta DataFrame dengan lajur dengan panjang yang berbeza dengan berkesan.

Untuk mencapai matlamat ini, kami boleh menukar setiap entri kamus kepada Siri Pandas, tatasusunan satu dimensi yang boleh mengendalikan nilai yang tiada dengan lancar. Dengan membungkus item kamus dalam ungkapan penjana dan menggunakan pembina Siri, kami boleh mencipta kamus objek Siri.

import pandas as pd
import numpy as np

# Sample data with uneven array lengths
data = {
    'A': np.random.randn(5),
    'B': np.random.randn(8),
    'C': np.random.randn(4)
}

# Convert dictionary items to Series
series_dict = dict((k, pd.Series(v)) for k, v in data.items())

# Create DataFrame from the dictionary of Series
df = pd.DataFrame(series_dict)
Salin selepas log masuk

Hasil:

In [1]: df
Out[1]:
        A         B         C
0  1.162543  1.681243  0.191287
1  0.459621  -0.141198 -0.109864
2  -0.866704 -0.128677  -0.511496
3  1.222436  -0.371449 -0.705894
4  -0.980584  1.255133       NaN
5        NaN -0.351051       NaN
6        NaN  0.443017       NaN
7        NaN -1.053693       NaN
Salin selepas log masuk

Seperti yang terbukti, DataFrame mengandungi nilai yang tiada (NaN) di mana panjang tatasusunan berbeza, membolehkan kami mencipta DataFrame dengan panjang lajur yang berbeza daripada kamus dengan panjang tatasusunan yang berbeza-beza.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Pandas DataFrame daripada Kamus dengan Panjang Array yang Berbeza-beza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan