Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Mencipta Pandas DataFrames daripada Kamus dengan Panjang Array yang Berbeza-beza?

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

Mary-Kate Olsen
Lepaskan: 2024-11-09 21:25:02
asal
235 orang telah melayarinya

How to Create Pandas DataFrames from Dictionaries with Varying Array Lengths?

Mencipta DataFrames daripada Kamus dengan Variasi Panjang Tatasusunan

Apabila mencipta DataFrame daripada kamus yang nilainya adalah tatasusunan numpy, ralat seterusnya mungkin timbul jika tatasusunan tidak mempunyai panjang yang sama. Ini kerana Pandas memerlukan panjang tatasusunan yang konsisten untuk setiap lajur.

Untuk mengatasinya, Pandas membenarkan nilai yang tiada (NaN) untuk mengisi tatasusunan yang lebih pendek. Ini membolehkan penciptaan DataFrames dengan lajur yang mempunyai panjang yang berbeza.

Python 2.x:

import pandas as pd
import numpy as np

d = dict( A = np.array([1,2]), B = np.array([1,2,3,4]) )
    
pd.DataFrame(dict([ (k,pd.Series(v)) for k,v in d.iteritems() ]))
Salin selepas log masuk

Python 3.x:

import pandas as pd
import numpy as np

d = dict( A = np.array([1,2]), B = np.array([1,2,3,4]) )
    
pd.DataFrame(dict([ (k,pd.Series(v)) for k,v in d.items() ]))
Salin selepas log masuk

Dalam kedua-dua kes, DataFrame yang terhasil akan mempunyai lajur A dan B, di mana A mengandungi dua nilai pertama tatasusunan masing-masing dalam kamus, dan B mengandungi keempat-empat nilai. Tatasusunan yang lebih pendek (A) dilapisi dengan NaN untuk nilai yang tiada.

Output:

    A  B
0   1  1
1   2  2
2 NaN  3
3 NaN  4
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Pandas DataFrames 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