Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menggabungkan Lajur Teks dalam Pandas DataFrame untuk Mencipta Lajur Baharu?

Bagaimanakah Saya Boleh Menggabungkan Lajur Teks dalam Pandas DataFrame untuk Mencipta Lajur Baharu?

Linda Hamilton
Linda Hamiltonasal
2024-12-18 03:48:10253semak imbas

How Can I Combine Text Columns in a Pandas DataFrame to Create a New Column?

Menggabungkan Lajur Teks untuk Membuat Lajur Baharu dalam Bingkai Data Pandas

Dalam panda, manipulasi data selalunya melibatkan penggabungan lajur untuk memperoleh cerapan bermakna. Satu senario sedemikian timbul apabila kita perlu menggabungkan lajur teks untuk mencipta lajur teks baharu.

Pertimbangkan rangka data berikut dengan dua lajur teks, "Tahun" dan "suku":

Year  quarter
2000       q2
2001       q3

Objektif kami adalah untuk mencipta lajur baharu yang dipanggil "tempoh" yang menggabungkan lajur "Tahun" dan "suku" untuk mendapatkan nilai seperti "2000q2" dan "2001q3."

Untuk mencapai matlamat ini, kita boleh menggabungkan terus lajur "Tahun" dan "suku" jika kedua-duanya adalah rentetan:

df["period"] = df["Year"].astype(str) + df["quarter"]

Walau bagaimanapun, jika satu atau kedua-dua lajur bukan rentetan, kita mesti menukarnya kepada rentetan sebelum dicantumkan. Contohnya:

df["period"] = df["Year"].astype(str) + df["quarter"]

Adalah penting untuk berhati-hati dengan nilai NaN semasa menjalankan operasi ini, kerana ia mungkin membawa kepada hasil yang tidak diingini.

Sebagai alternatif, jika berbilang lajur rentetan perlu dicantumkan, kaedah agg boleh terbukti berguna:

df['period'] = df[['Year', 'quarter', ...]].agg('-'.join, axis=1)

Dalam kes ini, "-" digunakan sebagai pemisah, tetapi anda boleh menyesuaikannya mengikut keperluan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggabungkan Lajur Teks dalam Pandas DataFrame untuk Mencipta Lajur Baharu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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