Lembar Cheat Pandas untuk Ilmu Data di Python

⚡ Ringkasan Cerdas

Lembar contekan Pandas meringkas perintah yang paling sering digunakan dalam pustaka ini ke dalam satu halaman. Referensi ini mengelompokkannya berdasarkan tugas: instalasi, membangun Series dan DataFrame, mengimpor file, memilih baris, membersihkan data, menerapkan fungsi, dan mengekspor hasil.

  • 🔘 Dua struktur: Series memiliki satu dimensi berlabel, sedangkan DataFrame memiliki dua dimensi dengan tipe kolom campuran.
  • ☑️ Impor apa pun: read_csv, read_excel, read_sql, read_json, dan read_html memuat file ke dalam DataFrame.
  • ✅ Pemilihan yang tepat: `loc` memilih berdasarkan label, `iloc` berdasarkan posisi, dan `boolean mask` menyaring baris berdasarkan kondisi.
  • 🧪 Bersihkan dengan andal: isnull, dropna, fillna, drop_duplicates, dan replace menangani celah dan catatan yang berulang.
  • ️ Periksa dengan cepat: bentuk, informasi, tipe data, dan deskripsi merangkum struktur dan statistik sebelum analisis dimulai.
  • ⚠️ Catatan versi: Pandas 3.0 mengaktifkan Copy-on-Write secara default, sehingga penugasan berantai akan menimbulkan kesalahan.

Lembar Cheat Pandas untuk Ilmu Data di Python

Apa itu Pandas Cheat Sheet?

Pustaka Pandas menyediakan ratusan fungsi, namun hanya sebagian kecil yang muncul dalam pekerjaan sehari-hari. Panduan singkat Pandas adalah referensi satu halaman yang mencantumkan perintah-perintah tersebut, dikelompokkan berdasarkan tugas yang mereka lakukan.

Ini mencakup struktur Series dan DataFrame, mengimpor dan mengekspor file, memilih dan mengurutkan data, membersihkan nilai, dan menerapkan fungsi. Setiap bagian di bawah ini memasangkan penjelasan singkat dengan kode yang dapat dijalankan, sehingga halaman ini juga berfungsi sebagai penyegaran bagi Anda. keterampilan analisis data.

👉 Unduh PDF Lembar Cheat di sini

Cara Menginstal dan Mengimpor Pandas

Ada dua perintah untuk mengatur Pandas, dan keduanya dijalankan di terminal atau Jupyter buku catatan sel.

Langkah 1) Instal Pandas

Jalankan ini sekali untuk setiap lingkungan; tambahkan tanda seru di depan setiap sel buku catatan.

pip install pandas

Langkah 2) Impor Pandas

Impor paket tersebut dengan menggunakan alias. pd, yang diasumsikan oleh setiap contoh di sini.

import pandas as pd

Sekarang Anda dapat memanggil fungsi Pandas untuk memanipulasi, menganalisis, dan membersihkan data. Bagian di bawah ini mencantumkan fungsi-fungsi tersebut sesuai urutan yang biasanya Anda gunakan.

Struktur Data Panda

Pandas memiliki dua struktur data, Seri ke Bingkai DataKeduanya adalah array berlabel dan keduanya dapat menyimpan tipe data apa pun. Satu-satunya perbedaan adalah dimensi: Series adalah array satu dimensi, dan DataFrame adalah array dua dimensi yang dibangun dari JumlahPy susunan di bawahnya.

Fitur Seri Bingkai Data
Ukuran satu dimensi Dua dimensi
Memegang Kolom berlabel tunggal Banyak kolom, tipe data campuran
Pembina pd.Series() pd.DataFrame()

1. Seri

Ini adalah array berlabel satu dimensi. Array ini dapat menampung tipe data apa pun, dan None menjadi nilai yang hilang.

s = pd.Series([2, -4, 6, 3, None], index=['A', 'B', 'C', 'D', 'E'])

2. Bingkai Data

Ini adalah array berlabel dua dimensi. Array ini dapat menampung semua tipe data dan berbagai ukuran kolom.

data = {'RollNo' : [101, 102, 75, 99],
        'Name' : ['Mithlesh', 'Ram', 'Rudra', 'Mithlesh'],
        'Course' : ['Nodejs', None, 'Nodejs', 'JavaScript']
}
df = pd.DataFrame(data, columns=['RollNo', 'Name', 'Course'])
df.head()

Lembar contekan yang dapat dicetak di bawah ini mengumpulkan perintah yang sama dalam satu halaman.

Lembar contekan Pandas yang dapat dicetak berisi daftar perintah Series dan DataFrame.

Mengimpor Data

Pandas dapat membaca berbagai tipe file langsung ke dalam DataFrame. Setiap pembaca di bawah ini mengembalikan satu DataFrame, dan read_csv () adalah yang paling banyak digunakan.

# Import a CSV file pd
pd.read_csv(filename)

# Import a TSV file
pd.read_table(filename)

# Import a Excel file pd
pd.read_excel(filename)

# Import a SQL table/database
pd.read_sql(query, connection_object)

# Import a JSON file
pd.read_json(json_string)

# Import a HTML file
pd.read_html(url)

# From clipboard to read_table()
pd.read_clipboard()

# From dict
pd.DataFrame(dict)

Seleksi

Anda dapat memilih elemen berdasarkan lokasinya atau berdasarkan label indeksnya. Sintaks tanda kurung siku yang sama memilih baris, kolom, dan irisan dari kedua struktur tersebut.

1. Seri

# Accessing one element from Series
s['D']

# Accessing all elements between two given indices
s['A':'C']

# Accessing all elements from starting till given index
s[:'C']

# Accessing all elements from given index till end
s['B':]

2. Bingkai Data

# Accessing one column df
df['Name']

# Accessing rows from after given row
df[1:]

# Accessing till before given row
df[:1]

# Accessing rows between two given rows
df[1:2]

Memilih berdasarkan Pengindeksan dan Pengaturan Boolean

penggunaan iloc ke iat untuk posisi bilangan bulat, dan loc ke at untuk label.

1. Berdasarkan Posisi

df.iloc[0, 1]

df.iat[0, 1]

2. Berdasarkan Label

df.loc[[0],  ['Name']]

3. Berdasarkan Label/Posisi

df.loc[2] # Both are same
df.iloc[2]

4. Pengindeksan Boolean

Mask boolean hanya menyimpan baris di mana kondisinya bernilai True. Contoh kedua menambahkan operator NOT. ~, sehingga juga mengembalikan nilai yang tidak lebih dari 1.

# Series s where value is > 1
s[(s > 0)]

# Series s where value is <-2 or >1
s[(s < -2) | ~(s > 1)]

# Use filter to adjust DataFrame
df[df['RollNo']>100]

# Set index a of Series s to 6
s['D'] = 10
s.head()

Pembersihan Data

Untuk Python Untuk tujuan lembar contekan pembersihan data, Anda dapat melakukan operasi berikut:

  • Ubah nama kolom menggunakan rename() Metode.
  • Perbarui nilai menggunakan at[] or iat[] Metode untuk mengakses dan memodifikasi elemen-elemen tertentu.
  • Buat salinan Series atau DataFrame menggunakan copy() Metode.
  • Periksa nilai NULL menggunakan isnull() metode, dan menjatuhkannya menggunakan dropna() Metode.
  • Periksa nilai duplikat menggunakan duplicated() metode. Jatuhkan mereka menggunakan drop_duplicates() Metode.
  • Ganti nilai NULL menggunakan fillna() metode dengan nilai tertentu.
  • Ganti nilai menggunakan replace() Metode.
  • Urutkan nilai menggunakan sort_values() Metode.
  • Urutkan nilai menggunakan rank() Metode.
# Renaming columns
df.columns = ['a','b','c']
df.head()

# Mass renaming of columns
df = df.rename(columns={'RollNo': 'ID', 'Name': 'Student_Name'})

# Or use this edit in same DataFrame instead of in copy
df.rename(columns={'RollNo': 'ID', 'Name': 'Student_Name'}, inplace=True)
df.head()

# Counting duplicates in a column
df.duplicated(subset='Name')

# Removing entire row that has duplicate in given column
df.drop_duplicates(subset=['Name'])

# You can choose which one keep - by default is first
df.drop_duplicates(subset=['Name'], keep='last')

# Checks for Null Values
s.isnull()

# Checks for non-Null Values - reverse of isnull()
s.notnull()

# Checks for Null Values df
df.isnull()

# Checks for non-Null Values - reverse of isnull()
df.notnull()

# Drops all rows that contain null values
df.dropna()

# Drops all columns that contain null values
df.dropna(axis=1)

# Replaces all null values with 'Guru99'
df.fillna('Guru99')

# Replaces all null values with the mean
s.fillna(s.mean())

# Converts the datatype of the Series to float
s.astype(float)

# Replaces all values equal to 6 with 'Six'
s.replace(6,'Six')

# Replaces all 2 with 'Two' and 6 with 'Six'
s.replace([2,6],['Two','Six'])

# Drop from rows (axis=0)
s.drop(['B',  'D'])

# Drop from columns(axis=1)
df.drop('Name', axis=1)

# Sort by labels with axis
df.sort_index()

# Sort by values with axis
df.sort_values(by='RollNo')

# Ranking entries
df.rank()

# s1 is pointing to same Series as s
s1 = s

# s_copy of s, but not pointing same Series
s_copy = s.copy()

# df1 is pointing to same DataFrame as df
df1 = s

# df_copy of df, but not pointing same DataFrame
df_copy = df.copy()

Perhatikan bahwa s1 = s hanya membuat nama kedua untuk objek yang sama, tidak pernah salinannya — itulah alasannya. copy() mengikutinya.

Mengambil Informasi

Anda dapat melakukan operasi-operasi berikut untuk mengambil informasi:

  • Gunakan shape atribut untuk mendapatkan jumlah baris dan kolom.
  • Gunakan head() or tail() metode untuk mendapatkan beberapa baris pertama atau terakhir sebagai sampel.
  • Gunakan info(), describe() or dtypes Metode untuk memperoleh informasi tentang tipe data, jumlah, rata-rata, simpangan baku, nilai minimum dan maksimum.
  • Gunakan count(), min(), max(), sum(), mean() ke median() metode untuk memperoleh informasi statistik spesifik untuk nilai-nilai tersebut.
  • Gunakan loc[] metode untuk mendapatkan sebuah baris.
  • Gunakan groupby() Metode untuk menerapkan fungsi GROUP BY untuk mengelompokkan nilai-nilai yang serupa dalam sebuah kolom DataFrame.

1. Informasi dasar

# Counting all elements in Series
len(s)

# Counting all elements in DataFrame
len(df)

# Prints number of rows and columns in dataframe
df.shape

# Prints first 10 rows by default, if no value set
df.head(10)

# Prints last 10 rows by default, if no value set
df.tail(10)

# For counting non-Null values column-wise
df.count()

# For range of index df
df.index

# For name of attributes/columns
df.columns

# Index, Data Type and Memory information
df.info()

# Datatypes of each column
df.dtypes

# Summary statistics for numerical columns
df.describe()

2. Ringkasan

# For adding all values column-wise
df.sum()

# For min column-wise
df.min()

# For max column-wise
df.max()

# For mean value in number column
df.mean()

# For median value in number column
df.median()

# Count non-Null values
s.count()

# Count non-Null values
df.count()

# Return Series of given column
df['Name'].tolist()

# Name of columns
df.columns.tolist()

# Creating subset
df[['Name', 'Course']]

# Return number of values in each group
df.groupby('Name').count()

Menerapkan Fungsi

apply() Menerapkan fungsi pada setiap nilai. Aturan perataan kemudian menentukan apa yang terjadi ketika dua objek hanya memiliki sebagian indeks yang sama.

# Define function
f = lambda x: x*5

# Apply this function on given Series - For each value
s.apply(f)

# Apply this function on given DataFrame - For each value
df.apply(f)

1. Penyelarasan Data Internal

# NA values for indices that don't overlap
s2 = pd.Series([8, -1, 4],  index=['A',  'C',  'D'])
s + s2

2. Aritmatika Operations dengan Metode Isi

# Fill values that don't overlap
s.add(s2, fill_value=0)

3. Filter, Urutkan, dan Kelompokkan Berdasarkan

Fungsi-fungsi ini dapat digunakan untuk memfilter, mengurutkan, dan mengelompokkan.ping Objek Series dan DataFrame.

# Filter rows where column is greater than 100
df[df['RollNo']>100]

# Filter rows where 70 < column < 101
df[(df['RollNo'] > 70) & (df['RollNo'] < 101)]

# Sorts values in ascending order
s.sort_values()

# Sorts values in descending order
s.sort_values(ascending=False)

# Sorts values by RollNo in ascending order
df.sort_values('RollNo')

# Sorts values by RollNo in descending order
df.sort_values('RollNo', ascending=False)

Mengekspor Data

Setiap penulis di bawah ini mencerminkan pembaca dari bagian impor, sehingga sebuah file dapat melakukan perjalanan bolak-balik tanpa alat tambahan.

# Export as a CSV file df
df.to_csv(filename)

# Export as a Excel file df
df.to_excel(filename)

# Export as a SQL table df
df.to_sql(table_name, connection_object)

# Export as a JSON file
df.to_json(filename)

# Export as a HTML table
df.to_html(filename)

# Write to the clipboard
df.to_clipboard()

Colab Lembar Cheat

Setiap perintah di sini dapat dijalankan di notebook pendamping: Lembar Cheat Panda – Python untuk Ilmu Data.ipynb.

Pertanyaan Umum Demo Slot

Copy-on-Write selalu diaktifkan, string menggunakan tipe data str khusus, dan penugasan berantai pada salinan yang difilter akan menimbulkan ChainedAssignmentError. Lakukan penugasan melalui .loc sebagai gantinya. Setiap perintah di sini masih berjalan pada panda 3.0.

pd.merge() menggabungkan berdasarkan kunci bersama seperti halnya SQL `join` melakukan hal yang sama, `df.join()` menyelaraskan berdasarkan indeks, dan `pd.concat()` menumpuk frame. Gunakan `merge` untuk kunci, `concat` untuk menambahkan.

df.pivot_table() mengubah baris panjang menjadi grid agregat yang lebar, pd.melt() membalikkannya, dan stack() atau unstack() memindahkan satu tingkat antara indeks dan kolom.

pd.to_datetime() mengkonversi teks menjadi datetime64, aksesori .dt mengekspos tahun, bulan, dan hari kerja, dan resample() mengagregasi berdasarkan hari, minggu, atau bulan setelah kolom tersebut menjadi indeks.

Operasi vektorisasi berjalan dalam kode C yang dikompilasi di seluruh array, sementara apply() memanggil sebuah Python Fungsi ini dijalankan sekali per baris. Tukarping Penggunaan `apply()` per baris untuk ekspresi yang divektorisasi seringkali sepuluh kali lebih cepat.

Asisten AI memetakan deskripsi sederhana dari hasil ke panggilan konkret, menyarankan groupby, merge, atau pivot_table dengan argumen yang dibutuhkan masing-masing. Verifikasi saran tersebut pada sampel kecil terlebih dahulu.

Ya. Kopilot GitHub mengubah komentar seperti "group by course and count" menjadi kode Pandas yang berfungsi di dalam JupyterAnggap output tersebut sebagai draf dan periksa jumlah barisnya.

Teruskan dtype ke read_csv (), konversikan kolom teks yang berulang ke kategori, ubah angka menjadi angka numerik menggunakan pd.to_numeric, dan muat secara bertahap menggunakan chunksize. df.info() melaporkan ukuran sebenarnya.

Ringkaslah postingan ini dengan: