Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Membongkar Lajur Seperti Senarai ke Baris Berasingan dalam DataFrame?
Soalan:
Bagaimana kita boleh mengubah DataFrame sel yang mengandungi senarai ke dalam baris individu untuk setiap nilai di dalamnya senarai?
Contoh:
Pertimbangkan DataFrame berikut:
name | opponent | nearest_neighbors |
---|---|---|
A.J. Price | 76ers | ['Zach LaVine', 'Jeremy Lin', 'Nate Robinson', 'Isaia'] |
Matlamat kami adalah untuk "meletupkan" lajur terdekat_jiran, mencipta lajur baharu baris untuk setiap nilai dalam list.
Jawapan:
Dalam panda versi 0.25 dan kemudian, kaedah explode() menjadikan operasi ini mudah:
import pandas as pd df = (pd.DataFrame({'name': ['A.J. Price'] * 3, 'opponent': ['76ers', 'blazers', 'bobcats'], 'nearest_neighbors': [['Zach LaVine', 'Jeremy Lin', 'Nate Robinson', 'Isaia']] * 3}) .set_index(['name', 'opponent'])) df.explode('nearest_neighbors')
Output:
name | opponent | nearest_neighbors |
---|---|---|
A.J. Price | 76ers | Zach LaVine |
A.J. Price | 76ers | Jeremy Lin |
A.J. Price | 76ers | Nate Robinson |
A.J. Price | 76ers | Isaia |
A.J. Price | blazers | Zach LaVine |
A.J. Price | blazers | Jeremy Lin |
A.J. Price | blazers | Nate Robinson |
A.J. Price | blazers | Isaia |
A.J. Price | bobcats | Zach LaVine |
A.J. Price | bobcats | Jeremy Lin |
A.J. Price | bobcats | Nate Robinson |
A.J. Price | bobcats | Isaia |
Kaedah explode() dengan berkesan membuka setiap senarai dalam lajur terdekat_jiran, mencipta baris baharu untuk setiap nilai.
Atas ialah kandungan terperinci Bagaimana untuk Membongkar Lajur Seperti Senarai ke Baris Berasingan dalam DataFrame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!