Menggabungkan Lajur dengan Panda
Manipulasi data selalunya melibatkan penyusunan nilai ke dalam kumpulan atau tong sampah yang bermakna. Dalam konteks ini, kami akan meneroka cara untuk mengosongkan lajur dengan nilai angka menggunakan panda.
Soalan:
Memandangkan lajur bingkai data dengan nilai angka, kami ingin visualkan ia sebagai tong dengan kiraan nilai. Secara khususnya, bagaimanakah kita boleh menentukan bilangan nilai yang terdapat dalam setiap tong?
Jawapan:
Pilihan 1: Menggunakan panda.cut
Fungsi panda.cut boleh digunakan untuk membuat tong sampah. Berikut ialah contoh:
import pandas as pd bins = [0, 1, 5, 10, 25, 50, 100] df['binned'] = pd.cut(df['percentage'], bins) df['binned'].value_counts()
Ini akan mencipta tong mengikut selang yang ditentukan dan mengembalikan siri yang mengandungi tugasan tong untuk setiap nilai. Menggunakan value_counts, kita boleh mengira bilangan kejadian dalam setiap bin.
Pilihan 2: Menggunakan numpy.searchsorted
Pendekatan lain ialah menggunakan numpy.searchsorted:
import numpy as np bins = [0, 1, 5, 10, 25, 50, 100] df['binned'] = np.searchsorted(bins, df['percentage'].values) df['binned'].value_counts()
Fungsi ini mengembalikan indeks tong pertama yang dimiliki oleh setiap nilai. Kami kemudiannya boleh menggunakan value_counts untuk menentukan bilangan bin.
Pilihan 3: Menggabungkan Groupby dan Saiz
Kami juga boleh menggunakan kaedah kumpulan dan saiz panda:
s = df.groupby(pd.cut(df['percentage'], bins)).size()
Ini akan mengumpulkan bingkai data mengikut tugasan tong dan mengembalikan satu siri dengan bilangan nilai dalam setiap bin.
Kesimpulan:
Kaedah ini membolehkan kami mengosongkan lajur berangka dengan berkesan dan mendapatkan kiraan nilai untuk setiap tong, memberikan cerapan tentang pengagihan nilai.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memotong Lajur Bingkai Data Pandas dan Mengira Nilai dalam Setiap Tong?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!