This is a draft cheat sheet. It is a work in progress and is not finished yet.
Change Value
Áp Dụng Nhiều Hàm với Pipe: |
df.pipe(tinh_tong).pipe(bo_cot, "a")
|
Áp Dụng Hàm Cho Một Cột: |
df["col1"] = df["col1"].apply(lambda row: row * 2)
|
Áp Dụng Hàm Cho Từng Phần Tử: |
df.applymap(lambda val: "failed" if val < 5 else "passed")
|
Gán Giá Trị Cho Nhiều Cột Mới: |
df = df.assign(col3=lambda x: x.col1 100 + x.col2).assign(col4=lambda x: x.col2 x.col3)
|
Thay Đổi Giá Trị của Series Bằng Dictionary: |
s.map({"a": 1, "b": 2, "c": 3})
|
Chuyển Mỗi Phần Tử Trong Iterable Thành Một Dòng: |
|
Tách Chuỗi Thành Nhiều Dòng: |
df.a = df.a.str.split(",") df.explode("a")
|
Forward Fill Trong pandas: |
df = df.fillna(method="ffill")
|
Thay Thế Giá Trị Trống Bằng Giá Trị Phổ Biến Nhất: |
df.fillna(df.mode().iloc[0])
|
Mã Hóa Giá Trị Phân Loại Trong DataFrame: |
df["encoded_col1"] = df["col1"].astype("category").cat.codes
|
Tối Ưu Hóa Mã với Phép Toán Vector: |
df = df.fillna(fill_dict)
|
Ném Ngoại lệ Cho Gán Gía Trị Liên Kết: |
pd.options.mode.chained_assignment = "raise" df[df["col1"] > 0]["col2"] = 1
|
Truy Cập Dữ Liệu
Truy Cập Nhóm Các Dòng với loc và iloc: |
|
pd.Series.between: Chọn Các Dòng Chứa Giá Trị Trong Một Phạm Vi: |
|
pandas.Series.pct_change: Tính Phần Trăm Thay Đổi Giữa Giá Trị Hiện Tại và Trước Đó: |
|
Tính Sự Khác Biệt Giữa Các Dòng của DataFrame: |
|
DataFrame.diff và DataFrame.shift: Lấy Sự Khác Biệt Giữa Các Dòng Trong Một Cột: |
diff = df.diff() shift = diff.shift(-1)
|
Chuyển pandas Series thành Mảng NumPy: |
|
df.to_dict: Chuyển DataFrame thành Từ Điển: |
|
Lấy Số Lần Xuất Hiện và Phần Trăm của Một Giá Trị Trong Một Cột: |
size.value_counts() size.value_counts(normalize=True)
|
pandas.DataFrame.corrwith: Tính Tương Quan Giữa 2 DataFrame: |
|
pandas.cut: Chia Giá Trị của DataFrame thành Các Khoảng Rời Rạc: |
pd.cut(df["a"], bins=bins)
|
pandas.qcut: Chia Giá Trị của DataFrame thành Các Khoảng Có Số Lượng Phần Tử Bằng Nhau: |
|
DataFrame.cumsum: Lấy Tổng Cộng Tích Lũy qua Mỗi Cột: |
|
pandas.DataFrame.cummax: Lấy Giá Trị Tối Đa Tích Lũy: |
|
Lấy Tổng Của Tất Cả Cột Trong DataFrame: |
df.sum(axis=1) df.sum(axis=0)
|
Làm Việc với Datetime
Chuyển Đổi Các Cột thành Đối Tượng Thời Gian Khi Sử Dụng pandas để Đọc Các Tệp CSV: |
pd.read_csv("data.csv", parse_dates=["date_column_1", "date_column_2"])
|
pandas’ DateOffset: Thêm Khoảng Thời Gian vào Một Điểm Thời Gian của pandas: |
ts + DateOffset(months=3) ts + DateOffset(years=3, hours=3) ts + BDay(n=6)
|
DataFrame rolling: Tính Trung Bình Của n Dữ Liệu Trước Đó Sử Dụng pandas: |
|
pandas Grouper: Nhóm Giá Trị Dựa trên Một Tần Suất Cụ Thể: |
df.groupby(pd.Grouper(key="date", freq="1W")).mean()
|
pandas.Series.dt: Truy Cập Các Thuộc Tính Thời Gian của Một Series của pandas: |
df["date"].dt.year df["date"].dt.time
|
Lấy Các Dòng trong Một Phạm Vi Năm: |
|
pandas.reindex: Thay Thế Giá Trị Của Các Ngày Thiếu Trong Một Dãy Ngày Bằng 0: |
new_s = s.reindex(new_index, fill_value=0)
|
Chọn Các Dòng Của DataFrame Trước hoặc Sau Một Ngày Cụ Thể: |
df[df.date <= "2021-07-21"]
|
resample: Tái Mẫu Dữ Liệu Chuỗi Thời Gian: |
|
Dịch Chỉ Số Của DataFrame Theo Số Kỳ Hạn Cụ Thể: |
|
|