Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Membina Pandas DataFrames daripada Kamus dengan Panjang Susunan Tidak Sekata?
Mengendalikan kamus dengan tatasusunan yang tidak sama panjang dalam Panda memerlukan pendekatan yang disesuaikan. Apabila cuba mencipta DataFrame dengan setiap lajur mewakili tatasusunan dalam kamus, seseorang mungkin menghadapi ValueError: "tatasusunan mestilah sama panjang."
Untuk memintas perkara ini isu, kami memanfaatkan objek Siri Panda yang boleh memuatkan tatasusunan dengan panjang yang berbeza-beza. Dengan menukar setiap nilai kamus kepada Siri, kami boleh menyimpan tatasusunan dengan berkesan tanpa mengira panjangnya. Coretan kod berikut menunjukkan pendekatan ini:
import pandas as pd import numpy as np # Sample data generated via a reproducible seed np.random.seed(2023) data = {k: np.random.randn(v) for k, v in zip("ABCDEF", [10, 12, 15, 17, 20, 23])} # Convert dictionary values to Series objects series_dict = {k: pd.Series(v) for k, v in data.items()} # Create DataFrame using these Series objects df = pd.DataFrame(series_dict)
Apabila bekerja dengan tatasusunan dengan panjang yang berbeza-beza, adalah perkara biasa untuk menemui nilai yang tiada di mana tatasusunan yang lebih pendek tidak dapat mengisi sel yang tinggal. Secara lalai, Pandas mengisi jurang ini dengan nilai NaN (Bukan Nombor). Tingkah laku ini mengekalkan data asal sambil menyediakan struktur yang konsisten untuk analisis.
Jika mahu, anda boleh menyesuaikan pengendalian nilai yang hilang dengan menggunakan parameter missing_values dalam DataFrame( ) pembina. Sebagai contoh, untuk menggantikan nilai yang hilang dengan sifar dan bukannya NaN, anda akan menentukan missing_values=0 seperti yang ditunjukkan di bawah:
df = pd.DataFrame(series_dict, missing_values=0)
Output berikut menggambarkan DataFrame yang dibuat menggunakan pendekatan yang digariskan di atas:
print(df)
A B C D E F 0 0.711674 -1.076522 -1.502178 -1.519748 0.340619 0.051132 1 -0.324485 -0.325682 -1.379593 2.097329 -1.253501 -0.238061 2 -1.001871 -1.035498 -0.204455 0.892562 0.370788 -0.208009 3 0.236251 -0.426320 0.642125 1.596488 0.455254 0.401304 4 -0.102160 -1.029361 -0.181176 -0.638762 -2.283720 0.183169 ... ... ... ... ... ... ... 18 NaN NaN NaN NaN NaN NaN 19 NaN NaN NaN NaN NaN NaN 20 NaN NaN NaN NaN NaN NaN 21 NaN NaN NaN NaN NaN NaN 22 NaN NaN NaN NaN NaN NaN 23 rows × 6 columns
Seperti yang anda boleh perhatikan, semakin pendek tatasusunan menghasilkan nilai NaN dalam sel yang sepadan, memberikan perwakilan komprehensif data anda sambil mengekalkan format jadual yang dikehendaki.
Atas ialah kandungan terperinci Bagaimana untuk Membina Pandas DataFrames daripada Kamus dengan Panjang Susunan Tidak Sekata?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!