Làm thế nào để bạn xóa nhiều dòng trong python?

Thao tác dữ liệu đề cập đến quá trình điều chỉnh dữ liệu để làm cho dữ liệu được tổ chức và dễ đọc hơn. Thông thường, có dữ liệu không sử dụng được và có thể ảnh hưởng đến những vấn đề quan trọng. Dữ liệu không cần thiết hoặc không chính xác nên được làm sạch và xóa

Nguồn từ giải quyết. com [1]

Có thể xóa một hoặc nhiều hàng/cột khỏi Khung dữ liệu Pandas theo nhiều cách. Trong số đó, phổ biến nhất là phương pháp

# A more intuitive way
df.drop(index=1)
5. Phương pháp này có vẻ khá dễ sử dụng, nhưng vẫn có một số thủ thuật bạn nên biết để tăng tốc độ phân tích dữ liệu của mình

Trong bài viết này, bạn sẽ tìm hiểu 05 thủ thuật của Pandas để đối phó với các trường hợp sử dụng sau

  1. Xóa một hàng
  2. Xóa nhiều hàng
  3. Xóa hàng dựa trên vị trí hàng và phạm vi tùy chỉnh
  4. Xóa một cột
  5. Xóa nhiều cột
  6. Xóa các cột dựa trên vị trí cột và phạm vi tùy chỉnh
  7. Làm việc với MultiIndex DataFrame
  8. Thực hiện thao tác tại chỗ với
    # A more intuitive way
    df.drop(index=1)
    7
  9. Loại bỏ lỗi với
    # A more intuitive way
    df.drop(index=1)
    8

Vui lòng kiểm tra Notebook để biết mã nguồn. Các hướng dẫn khác có sẵn từ Github Repo

1. Xóa một hàng

Theo mặc định, Pandas

# A more intuitive way
df.drop(index=1)
5 sẽ xóa hàng dựa trên giá trị chỉ mục của chúng. Thông thường, giá trị chỉ mục là giá trị số nguyên dựa trên 0 trên mỗi hàng. Chỉ định một chỉ mục hàng sẽ xóa nó, ví dụ: xóa hàng có giá trị chỉ mục
df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
0

df.drop(1)# It's equivalent to
df.drop(labels=1)

xóa một hàng bằng Pandas drop() (Ảnh của tác giả)

Lưu ý rằng đối số

df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
1 phải được đặt thành
df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
2 để xóa các hàng (Trong Pandas
# A more intuitive way
df.drop(index=1)
5,
df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
1 mặc định là
df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
2, vì vậy có thể bỏ qua nó). Nếu
df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
6 được chỉ định, thay vào đó nó sẽ xóa các cột

Ngoài ra, một cách trực quan hơn để xóa một hàng khỏi DataFrame là sử dụng đối số

df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
7

# A more intuitive way
df.drop(index=1)

xóa một hàng bằng Pandas drop() (Ảnh của tác giả)2. Xóa nhiều hàng

Pandas

# A more intuitive way
df.drop(index=1)
5 có thể lấy một danh sách để xóa nhiều hàng

df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])

xóa nhiều hàng bằng Pandas drop() (Ảnh của tác giả)

Tương tự, một cách trực quan hơn để xóa nhiều hàng là chuyển một danh sách tới đối số

df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
7

# A more intuitive way
df.drop(index=1)
8

xóa nhiều hàng bằng Pandas drop() (Ảnh của tác giả)3. Xóa hàng dựa trên vị trí hàng và phạm vi tùy chỉnh

Các giá trị chỉ mục DataFrame có thể không theo thứ tự tăng dần, đôi khi chúng có thể là bất kỳ giá trị nào khác, ví dụ: nhãn ngày giờ hoặc chuỗi. Đối với những trường hợp này, chúng ta có thể xóa các hàng dựa trên vị trí hàng của chúng, ví dụ: xóa hàng thứ 2, chúng ta có thể gọi

# A more intuitive way
df.drop(index=1)
80 và chuyển nó vào đối số
df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
7

# A more intuitive way
df.drop(index=1)
1

xóa hàng dựa trên vị trí hàng (Hình ảnh của tác giả)

Để xóa hàng cuối cùng, chúng ta có thể sử dụng các phím tắt như

# A more intuitive way
df.drop(index=1)
82 để xác định chỉ mục cuối cùng

# A more intuitive way
df.drop(index=1)
3

xóa hàng dựa trên vị trí hàng (Hình ảnh của tác giả)

Ví dụ, chúng ta cũng có thể sử dụng kỹ thuật lát cắt để chọn một loạt các hàng

  • Xóa 2 hàng cuối cùng
    # A more intuitive way
    df.drop(index=1)
    83
  • Xóa mọi hàng khác
    # A more intuitive way
    df.drop(index=1)
    84

xóa hàng dựa trên vị trí hàng (Hình ảnh của tác giả)

Nếu bạn muốn tìm hiểu thêm về kỹ thuật slice và cách sử dụng chỉ số hàng để chọn dữ liệu, bạn có thể xem bài viết này

Cách sử dụng loc và iloc để chọn dữ liệu trong Pandas

Mẹo và thủ thuật của Pandas để giúp bạn bắt đầu phân tích dữ liệu

hướng tới khoa học dữ liệu. com

4. Xóa một cột

Tương tự như xóa hàng, Pandas

# A more intuitive way
df.drop(index=1)
5 có thể được sử dụng để xóa cột bằng cách chỉ định đối số
df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
1 thành
df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
0

# A more intuitive way
df.drop(index=1)
9

xóa một cột bằng cách sử dụng Pandas drop() (Ảnh của tác giả)

Một cách trực quan hơn để xóa một cột khỏi DataFrame là sử dụng đối số

# A more intuitive way
df.drop(index=1)
88

# A more intuitive way
df.drop(index=1)
1

xóa một cột bằng Pandas drop() (Ảnh của tác giả)5. Xóa nhiều cột

Tương tự, chúng ta có thể chuyển một danh sách để xóa nhiều cột

# A more intuitive way
df.drop(index=1)
2

xóa nhiều cột bằng Pandas drop() (Ảnh của tác giả)

Một cách trực quan hơn để xóa nhiều cột là chuyển một danh sách tới đối số

# A more intuitive way
df.drop(index=1)
88

# A more intuitive way
df.drop(index=1)
4

xóa nhiều cột bằng Pandas drop() (Ảnh của tác giả)6. Xóa các cột dựa trên vị trí cột và phạm vi tùy chỉnh

Chúng ta có thể xóa một cột dựa trên vị trí cột của nó, ví dụ: xóa cột thứ 2, chúng ta có thể gọi

# A more intuitive way
df.drop(index=1)
10 và chuyển nó vào đối số
# A more intuitive way
df.drop(index=1)
88

# A more intuitive way
df.drop(index=1)
0

xóa cột dựa trên vị trí cột (Ảnh của tác giả)

Để xóa cột cuối cùng, chúng ta có thể sử dụng các phím tắt như

# A more intuitive way
df.drop(index=1)
82 để xác định chỉ mục cuối cùng

# A more intuitive way
df.drop(index=1)
1

xóa cột dựa trên vị trí cột (Ảnh của tác giả)

Tương tự, chúng ta cũng có thể sử dụng kỹ thuật lát cắt để chọn một dãy cột, chẳng hạn

  • Xóa 2 cột cuối cùng
    # A more intuitive way
    df.drop(index=1)
    13
  • Xóa mọi cột khác
    # A more intuitive way
    df.drop(index=1)
    14

xóa cột dựa trên vị trí cột (Ảnh của tác giả)7. Làm việc với Multi Index

Khung dữ liệu MultiIndex (còn được gọi là chỉ mục phân cấp) cho phép chúng tôi có nhiều cột đóng vai trò là mã định danh hàng và nhiều hàng đóng vai trò là mã định danh tiêu đề

(hình ảnh của tác giả)

Khi gọi Pandas

# A more intuitive way
df.drop(index=1)
5 trên Khung dữ liệu MultiIndex, nó sẽ xóa chỉ mục và cột cấp 0 theo mặc định

# A more intuitive way
df.drop(index=1)
2

Pandas drop() trong MultiIndex (hình ảnh của tác giả)

Để chỉ định mức bị xóa, chúng ta có thể đặt đối số

# A more intuitive way
df.drop(index=1)
16

# A more intuitive way
df.drop(index=1)
3

Pandas drop() trong MultiIndex (hình ảnh của tác giả)

Trong một số trường hợp, chúng tôi muốn xóa một tổ hợp chỉ mục hoặc cột cụ thể. Để làm điều đó, chúng ta có thể truyền một tuple cho đối số

df.drop([1,2])# It's equivalent to
df.drop(labels=[1,2])
7 hoặc
# A more intuitive way
df.drop(index=1)
88

# A more intuitive way
df.drop(index=1)
4

Pandas drop() trong MultiIndex (hình ảnh của tác giả)

Nếu bạn muốn tìm hiểu thêm về cách truy cập dữ liệu trong MultiIndex DataFrame, vui lòng xem bài viết này

Truy cập dữ liệu trong Khung dữ liệu MultiIndex trong Pandas

hướng tới khoa học dữ liệu. com

8. Thực hiện thao tác tại chỗ với
# A more intuitive way
df.drop(index=1)
7

Theo mặc định, Pandas

# A more intuitive way
df.drop(index=1)
5 trả về một bản sao của kết quả mà không ảnh hưởng đến DataFrame đã cho. Chúng tôi có thể đặt đối số
# A more intuitive way
df.drop(index=1)
7 để thực hiện thao tác tại chỗ để tránh gán lại bổ sung và giảm mức sử dụng bộ nhớ

9. Loại bỏ lỗi với
# A more intuitive way
df.drop(index=1)
8

Bạn có thể nhận thấy rằng Pandas

# A more intuitive way
df.drop(index=1)
5 sẽ đưa ra lỗi khi các hàng hoặc cột đã cho không tồn tại. Chúng ta có thể đặt đối số
# A more intuitive way
df.drop(index=1)
8 để chặn lỗi

Sự kết luận

Trong bài viết này, chúng tôi đã đề cập đến 9 trường hợp sử dụng về việc xóa các hàng và cột bằng Pandas

# A more intuitive way
df.drop(index=1)
5. Bản thân phương pháp này rất dễ sử dụng và nó là một trong những phương pháp được yêu thích hàng đầu để thao tác dữ liệu trong Tiền xử lý dữ liệu

Cảm ơn vì đã đọc. Vui lòng xem Notebook để biết mã nguồn và tiếp tục theo dõi nếu bạn quan tâm đến khía cạnh thực tế của máy học. Các hướng dẫn khác có sẵn từ Github Repo