Pemilihan Lajur dalam Pandas DataFrames: Panduan Penyelesaian Masalah
Apabila bekerja dengan bingkai data Pandas, memilih lajur tertentu ialah tugas asas. Walau bagaimanapun, percubaan untuk mencapai ini menggunakan sintaks seperti df['a':'b'] atau df.ix[:, 'a':'b'] mungkin menghadapi halangan kerana ketidakupayaan untuk menghiris nama lajur sebagai rentetan.
Pilihan 1: Pemilihan Lajur Eksplisit
Untuk memilih lajur tertentu mengikut nama, penyelesaiannya terletak pada menghantar senarai nama lajur kepada sintaks __getitem__:
df1 = df[['a', 'b']]
Pendekatan ini mencipta paparan hanya lajur yang diingini.
Pilihan 2: Pemilihan Lajur Berangka
Jika mengindeks lajur secara berangka diutamakan, fungsi iloc boleh bekerja:
df1 = df.iloc[:, 0:2]
Perhatikan bahawa pengindeksan Python mengecualikan indeks penamat.
Salin vs. Paparan
Adalah penting untuk memahami perbezaan antara paparan dan salinan objek Pandas. Secara lalai, kaedah pertama mencipta salinan, manakala kaedah kedua mengembalikan pandangan yang merujuk lokasi memori yang sama dengan objek asal. Untuk mendapatkan salinan menggunakan kaedah kedua, gunakan kaedah .copy():
df1 = df.iloc[0, 0:2].copy()
Menggunakan Indeks Lajur
Untuk mengakses lajur mengikut nama menggunakan iloc, indeks lajur boleh diperoleh menggunakan fungsi get_loc:
column_indices = {df.columns.get_loc(c): c for idx, c in enumerate(df.columns)} df1 = df.iloc[:, [column_indices['a'], column_indices['b']]]
Atas ialah kandungan terperinci Bagaimana untuk Memilih Lajur dengan Betul dalam Pandas DataFrames?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!