Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Mengasingkan Nilai Dipisahkan Koma kepada Berbilang Baris dalam Pandas DataFrame?

Bagaimana untuk Mengasingkan Nilai Dipisahkan Koma kepada Berbilang Baris dalam Pandas DataFrame?

Patricia Arquette
Lepaskan: 2024-10-27 19:32:02
asal
588 orang telah melayarinya

How to Separate Comma-Separated Values into Multiple Rows in a Pandas DataFrame?

Pisah Sel kepada Berbilang Baris dalam Pandas DataFrame

Dalam senario ini, anda mempunyai DataFrame yang mengandungi data pesanan, di mana setiap pesanan mempunyai berbilang pakej yang disimpan sebagai dipisahkan koma rentetan dalam lajur pakej dan package_code. Matlamatnya adalah untuk memisahkan pakej ini dan mencipta baris baharu untuk setiap pakej yang termasuk butiran pesanannya yang sepadan.

Dengan mengandaikan semua lajur boleh belah mempunyai bilangan item yang dipisahkan koma yang sama, anda boleh menggunakan langkah berikut untuk mencapai output yang diingini:

<code class="python">import pandas as pd

# Create the sample DataFrame
df = pd.DataFrame({"order_id": [1, 3, 7], "order_date": ["20/5/2018", "22/5/2018", "23/5/2018"], "package": ["p1,p2,p3", "p4", "p5,p6"], "package_code": ["#111,#222,#333", "#444", "#555,#666"]})

# Use pandas functions to split and explode the columns
result_df = (df.set_index(['order_id', 'order_date'])
              .apply(lambda x: x.str.split(',').explode())
              .reset_index())

# Display the output DataFrame
print(result_df)</code>
Salin selepas log masuk

Kod ini mula-mula menetapkan lajur untuk tidak disentuh sebagai indeks. Ia kemudian melelang melalui setiap lajur, membahagikan nilai pada koma dan meletupkannya ke dalam barisnya sendiri. Akhirnya, indeks ditetapkan semula untuk mendapatkan format yang diingini.

DataFrame output akan mempunyai baris yang berasingan untuk setiap pakej, termasuk butiran pesanannya.

Atas ialah kandungan terperinci Bagaimana untuk Mengasingkan Nilai Dipisahkan Koma kepada Berbilang Baris dalam Pandas DataFrame?. 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