Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana dengan Cekap Menukar Pandas DataFrames kepada NumPy Arrays?
Menggunakan df.to_numpy() ialah kaedah yang disyorkan kerana ia menyediakan cara yang konsisten dan boleh dipercayai untuk mendapatkan tatasusunan NumPy daripada objek panda. Ia ditakrifkan pada objek Indeks, Siri dan DataFrame, dan secara lalai, ia mengembalikan paparan data asas, yang bermaksud bahawa sebarang pengubahsuaian yang dibuat pada tatasusunan NumPy juga akan ditunjukkan dalam objek panda. Jika salinan data diperlukan, copy=Parameter True boleh digunakan.
Adalah penting untuk ambil perhatian bahawa df.values tidak akan ditamatkan dalam versi semasa panda, tetapi adalah disyorkan untuk menggunakan df.to_numpy() untuk kod baharu dan berhijrah ke arah API yang lebih baharu sebaik sahaja mungkin.
Untuk mengekalkan djenis semasa menukar bingkai data panda kepada tatasusunan NumPy, kaedah DataFrame.to_records() boleh digunakan.
indeks = [1, 2, 3, 4, 5, 6, 7]
a = [np.nan, np.nan, np.nan, 0.1, 0.1, 0.1, 0.1]
b = [0.2, np.nan, 0.2, 0.2, 0.2, np.nan, np.nan]
c = [np.nan, 0.5, 0.5, np.nan, 0.5, 0.5, np.nan]
df = pd.DataFrame({'A': a, 'B': b, 'C': c}, index=index)
df = df.rename_axis('ID')
array = df.to_records()
cetak(susun)
Keluaran kod adalah seperti berikut:
[1, 'a', nan, 0.2, nan], [2, 'b', nan, nan, 0.5], [3, 'c', nan, 0.2, 0.5], [4, 'd', 0.1, 0.2, nan], [5, 'e', 0.1, 0.2, 0.5], [6, 'f', 0.1, nan, 0.5], [7, 'g', 0.1, nan, nan]), dtype=[('ID', '<i8'), ('index', 'O'), ('A', '<f8'), ('B', '<f8'), ('C', '<f8')])
Seperti yang anda lihat, tatasusunan NumPy mengekalkan djenis lajur dalam DataFrame.
Atas ialah kandungan terperinci Bagaimana dengan Cekap Menukar Pandas DataFrames kepada NumPy Arrays?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!