Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya boleh memisahkan rentetan teks kepada berbilang baris berdasarkan pembatas tertentu menggunakan Panda?
Kaedah Pandas untuk Memisahkan Teks kepada Berbilang Baris
Masalah:
Fail CSV yang besar mengandungi lajur dengan rentetan teks yang perlu dipecahkan kepada berbilang baris berdasarkan pembatas tertentu. Matlamatnya ialah untuk mencipta baris berasingan bagi setiap set teks pecahan.
Penyelesaian menggunakan Panda:
Dipisahkan oleh Ruang dan Titik Bertitik:
s = df['Seatblocks'].str.split(' ').apply(Series, 1).stack() s.index = s.index.droplevel(-1) s.name = 'Seatblocks' del df['Seatblocks'] df.join(s)
Contoh Output:
CustNum CustomerName ItemQty Item ItemExt Seatblocks 0 32363 McCartney, Paul 3 F04 60 2:218:10:4,6 1 31316 Lennon, John 25 F01 300 1:13:36:1,12 1 31316 Lennon, John 25 F01 300 1:13:37:1,13
Berpisah mengikut Kolon:
df.join(s.apply(lambda x: Series(x.split(':'))))
Contoh Output:
CustNum CustomerName ItemQty Item ItemExt 0 1 2 3 0 32363 McCartney, Paul 3 F04 60 2 218 10 4,6 1 31316 Lennon, John 25 F01 300 1 13 36 1,12 1 31316 Lennon, John 25 F01 300 1 13 37 1,13
Atas ialah kandungan terperinci Bagaimanakah saya boleh memisahkan rentetan teks kepada berbilang baris berdasarkan pembatas tertentu menggunakan Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!