Fungsi Panda replace() Tidak Menggantikan Nilai
Dokumentasi untuk kaedah replace() dalam Pandas menyatakan bahawa ia menggantikan semua kejadian sesuatu nilai yang ditentukan dengan nilai lain. Walau bagaimanapun, dalam beberapa kes, kaedah replace() nampaknya tidak berfungsi, walaupun argumen yang diberikan kelihatan betul.
Satu sebab yang mungkin untuk ini ialah kaedah replace() melakukan carian penggantian penuh secara lalai. Jika niatnya adalah untuk melakukan penggantian separa, parameter regex mesti ditetapkan kepada Benar. Dengan mendayakan sokongan ungkapan biasa, kaedah replace() akan mencari subrentetan dalam nilai sasaran dan menggantikan semua kejadian subrentetan itu dengan nilai gantian yang ditentukan.
Contohnya:
<code class="python">import pandas as pd d = {'color': pd.Series(['white', 'blue', 'orange']), 'second_color': pd.Series(['white', 'black', 'blue']), 'value': pd.Series([1., 2., 3.])} df = pd.DataFrame(d) df.replace('white', np.nan, regex=True)</code>
Pengubahsuaian ini akan menggantikan semua kejadian rentetan 'putih' dengan NaN, tanpa mengira kedudukannya dalam sel.
Adalah penting untuk ambil perhatian bahawa menggunakan parameter regex boleh menjejaskan prestasi replace() kaedah, terutamanya apabila berurusan dengan set data yang besar. Oleh itu, ia harus digunakan hanya apabila perlu.
Atas ialah kandungan terperinci Mengapakah Fungsi Panda `replace()` Sentiasa Berfungsi Seperti Yang Dijangkakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!