Memisahkan Lajur Senarai Panda kepada Berbilang Lajur
Dalam penerokaan data, selalunya perlu untuk menstruktur semula lajur DataFrame ke dalam format yang lebih terurus. Satu senario sedemikian melibatkan pembahagian lajur yang mengandungi senarai kepada berbilang lajur.
Pertimbangkan DataFrame dengan satu lajur bernama "pasukan", yang mengandungi senarai nama pasukan:
import pandas as pd df = pd.DataFrame({ "teams": [[ "SF", "NYG" ] for _ in range(7)] })
Untuk membahagikan ini lajur "pasukan" kepada dua lajur, "pasukan1" dan "pasukan2," kita boleh memanfaatkan pembina DataFrame dengan senarai yang dibuat dengan kaedah to_list.
Pilihan 1: Mengubah suai DataFrame Sedia Ada
Menggunakan kaedah to_list, kita boleh menukar senarai "pasukan" menjadi senarai senarai, yang boleh digunakan untuk mencipta lajur "team1" dan "team2" baharu:
df[['team1', 'team2']] = pd.DataFrame(df['teams'].tolist(), index=df.index)
Operasi ini mengubah suai DataFrame asal dengan lajur baharu:
teams team1 team2 0 [SF, NYG] SF NYG 1 [SF, NYG] SF NYG 2 [SF, NYG] SF NYG 3 [SF, NYG] SF NYG 4 [SF, NYG] SF NYG 5 [SF, NYG] SF NYG 6 [SF, NYG] SF NYG
Pilihan 2: Mencipta DataFrame Baharu
Sebagai alternatif, jika dikehendaki, kami boleh mencipta DataFrame baharu dengan lajur pisah:
df3 = pd.DataFrame( df['teams'].tolist(), columns=['team1', 'team2'] )
Operasi ini mencipta yang berasingan DataFrame:
team1 team2 0 SF NYG 1 SF NYG 2 SF NYG 3 SF NYG 4 SF NYG 5 SF NYG 6 SF NYG
Sila ambil perhatian bahawa menggunakan fungsi apply(pd.Series) untuk mencapai pemisahan ini adalah lebih perlahan dan tidak disyorkan untuk set data yang lebih besar.
Atas ialah kandungan terperinci Bagaimana untuk Membahagikan Lajur Senarai Panda kepada Berbilang Lajur dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!