Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Berjaya Memasukkan Senarai ke dalam Sel DataFrame dalam Python?
Apabila berurusan dengan data jarang dalam panda Python, ia boleh mencabar untuk memasukkan senarai ke dalam sel tertentu. Mencuba operasi sedemikian menggunakan kaedah biasa seperti df.ix[1,'B'] = abc selalunya membawa kepada ralat disebabkan oleh panjang kekunci yang tidak sepadan.
Percubaan untuk mengatasi masalah ralat dengan melampirkan senarai dalam kurungan segi empat sama tambahan (cth., df.ix[1,'B'] = [abc]) atau menggunakan perwakilan rentetan (cth., df.ix[1,'B'] = ', '.join (abc)) tidak memuaskan, kerana ia memperkenalkan elemen tambahan atau mengubah struktur data yang dimaksudkan.
Pendekatan yang lebih berkesan ialah menggunakan df.at dan bukannya df.ix atau df.loc. df.at secara khusus menyasarkan sel tunggal, menghapuskan kekaburan yang boleh membawa kepada ralat yang dinyatakan di atas.
<code class="python">import pandas as pd # Create a dataframe with mixed data types df = pd.DataFrame(data={'A': [1, 2, 3], 'B': ['x', 'y', 'z']}) # Insert a list into cell 1B df.at[1, 'B'] = ['m', 'n'] print(df)</code>
Operasi ini berjaya memasukkan ['m', 'n'] ke dalam sel 1B tanpa sebarang ralat.
Adalah penting untuk ambil perhatian bahawa lajur yang anda ingin masukkan senarai itu mesti mempunyai dtype ditetapkan kepada 'objek'. Jika lajur mempunyai dtype yang berbeza, seperti 'int64', ralat akan berlaku. Untuk menangani perkara ini, anda boleh menukar dtype lajur sebelum mencuba sisipan:
<code class="python">df = pd.DataFrame(data={'A': [1, 2, 3], 'B': [1,2,3]}) df['B'] = df['B'].astype('object') # Now, list insertion will work as expected df.at[1, 'B'] = [1, 2, 3]</code>
Atas ialah kandungan terperinci Bagaimana untuk Berjaya Memasukkan Senarai ke dalam Sel DataFrame dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!