Trong hầu hết các kịch bản dữ liệu lớn, việc chuyển đổi dữ liệu tuân theo các hoạt động xác thực và làm sạch dữ liệu. Các hoạt động thể hiện trong công thức này được sử dụng rộng rãi nhất trong ngành và có thể được sử dụng lại trong các môi trường công nghiệp quy mô lớn khác nhau
Truy cập mã dự án nhận dạng khuôn mặt bằng Facenet trong Python
Yêu cầu hệ thống
- Cài đặt mô-đun python như sau nếu không tìm thấy các mô-đun bên dưới
5# Syntax of drop_duplicates DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
6# Syntax of drop_duplicates DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
- Các mã dưới đây có thể được chạy trong sổ ghi chép Jupyter hoặc bất kỳ bảng điều khiển python nào
Bước 1. Nhập mô-đun
Nhập khẩu
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
7Bước 2. Đọc tệp csv
Đọc tệp csv từ cục bộ và tạo khung dữ liệu bằng gấu trúc và in 5 dòng để kiểm tra dữ liệu
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
8Đầu ra của mã trên
Bước 3. Tìm hàng trùng lặp dựa trên tất cả các cột
Trong ví dụ này, chúng tôi sẽ sử dụng tập dữ liệu nhân viên
Để tìm và chọn tất cả các hàng trùng lặp dựa trên tất cả các cột, hãy gọi Dataframe. bản sao[]
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
9Đầu ra của mã trên
Ở đây, tất cả các hàng trùng lặp ngoại trừ lần xuất hiện đầu tiên của chúng đều được trả về vì giá trị mặc định của đối số giữ là 'đầu tiên'. Nếu chúng tôi muốn chọn tất cả các hàng trùng lặp ngoại trừ lần xuất hiện cuối cùng của chúng thì chúng tôi cần chuyển đối số giữ là 'cuối cùng' i. e
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
0Bước 4. Tìm các hàng trùng lặp dựa trên các cột đã chọn
Nếu chúng tôi muốn so sánh các hàng và tìm các bản sao dựa trên các cột đã chọn
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
1Đầu ra của mã trên
Bước 5. Loại bỏ các bản sao từ một cột cụ thể
Ở đây, bạn thả các bản sao từ cột 1. Ngoài ra, bạn có thể thêm 'keep' và cho biết bạn muốn giữ đối số đầu tiên [keep='first'], đối số cuối cùng [keep='last'] khỏi các mục trùng lặp hay loại bỏ tất cả các mục trùng lặp [keep= . Mặc định là 'đầu tiên', vì vậy nếu bạn hài lòng với điều đó, bạn không cần phải thêm điều này
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
2Bước 6. Xóa tất cả các hàng trùng lặp khỏi DataFrame
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
3Đầu ra của mã trên. Kết quả là nó cung cấp khung dữ liệu mà không trùng lặp
Bước 7. Sắp xếp các hàng khung dữ liệu trên một cột
Trong mã dưới đây, chúng tôi sẽ sắp xếp tất cả các hàng dựa trên một cột
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
4Đầu ra của mã trên
Bước 8. Sắp xếp các hàng Dataframe dựa trên các cột theo Thứ tự giảm dần/tăng dần
Trong đoạn mã dưới đây, để sắp xếp tất cả các hàng dựa trên một cột theo thứ tự giảm dần hoặc tăng dần bằng cách truyền một tham số:
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
60Bước 9. Sắp xếp các hàng Dataframe dựa trên nhiều cột
Trong đoạn mã dưới đây sắp xếp dữ liệu dựa trên nhiều cột
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
61Bước 10. Thay đổi thứ tự và Viết tệp csv
Sau khi thay đổi thứ tự của tên cột, hãy ghi dữ liệu được định dạng vào tệp csv ở địa phương hoặc hdfs của bạn
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
62Đầu ra của các dòng trên
Đầu ra của các dòng trên
Yêu cầu hệ thống
Để cài đặt thư viện googletrans chạy mã bên dưới, lệnh này sẽ tự động tải xuống và cài đặt thư viện
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
63Nhập thư viện và đọc tệp csv, ở đây chúng tôi đang sử dụng tệp csv dữ liệu nhân viên với cột tiếng Tây Ban Nha
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
64Trong đoạn mã trên, chúng tôi đang đọc tệp csv có cột tiếng Tây Ban Nha, vì vậy chúng tôi sẽ chuyển đổi sang tiếng Anh bằng thư viện googletrans
Bằng cách sử dụng phương pháp
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
5, bạn có thể xóa các hàng trùng lặp khỏi DataFrame. Sử dụng phương pháp này, bạn có thể loại bỏ các hàng trùng lặp trên nhiều cột hoặc tất cả các cột đã chọn. Trong bài viết này, chúng tôi sẽ giải thích một số cách loại bỏ các hàng trùng lặp khỏi Pandas DataFrame với các ví dụ bằng cách sử dụng các hàm như hàm
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
6,
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
7 và hàm lambda với các ví dụCó liên quan. Pandas Nhận danh sách tất cả các hàng trùng lặp
1. Ví dụ nhanh về Drop Duplicate Rows
Nếu bạn đang vội, dưới đây là một số ví dụ nhanh về cách loại bỏ các hàng trùng lặp trong DataFrame của gấu trúc
# Below are quick example
# keep first duplicate row
df2 = df.drop_duplicates[]
# Using DataFrame.drop_duplicates[] to keep first duplicate row
df2 = df.drop_duplicates[keep='first']
# keep last duplicate row
df2 = df.drop_duplicates[ keep='last']
# Remove all duplicate rows
df2 = df.drop_duplicates[keep=False]
# Delete duplicate rows based on specific columns
df2 = df.drop_duplicates[subset=["Courses", "Fee"], keep=False]
# Drop duplicate rows in place
df.drop_duplicates[inplace=True]
# Using DataFrame.apply[] and lambda function
df2 = df.apply[lambda x: x.astype[str].str.lower[]].drop_duplicates[subset=['Courses', 'Fee'], keep='first']
2. drop_duplicates[] Cú pháp & Ví dụ
Dưới đây là cú pháp của hàm
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
6 loại bỏ các hàng trùng lặp khỏi DataFrame của gấu trúc
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
9 – Nhãn cột hoặc chuỗi nhãn. Giá trị mặc định của nó là không. Sau khi chuyển các cột, hãy xem xét việc xác định các hàng trùng lặp# Syntax of drop_duplicates DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
0 – Các giá trị được phép là {'đầu tiên', 'cuối cùng', Sai}, mặc định là 'đầu tiên'import pandas as pd import numpy as np technologies = { 'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"], 'Fee' :[20000,25000,22000,30000,22000,20000,30000], 'Duration':['30days','40days','35days','50days','35days','30days','50days'], 'Discount':[1000,2300,1200,2000,1200,1000,2000] } df = pd.DataFrame[technologies] print[df]
1 – Các hàng trùng lặp ngoại trừ hàng đầu tiên bị loại bỏimport pandas as pd import numpy as np technologies = { 'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"], 'Fee' :[20000,25000,22000,30000,22000,20000,30000], 'Duration':['30days','40days','35days','50days','35days','30days','50days'], 'Discount':[1000,2300,1200,2000,1200,1000,2000] } df = pd.DataFrame[technologies] print[df]
2 – Các hàng trùng lặp ngoại trừ hàng cuối cùng bị loại bỏimport pandas as pd import numpy as np technologies = { 'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"], 'Fee' :[20000,25000,22000,30000,22000,20000,30000], 'Duration':['30days','40days','35days','50days','35days','30days','50days'], 'Discount':[1000,2300,1200,2000,1200,1000,2000] } df = pd.DataFrame[technologies] print[df]
3 – Tất cả các hàng trùng lặp đều bị loại bỏimport pandas as pd import numpy as np technologies = { 'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"], 'Fee' :[20000,25000,22000,30000,22000,20000,30000], 'Duration':['30days','40days','35days','50days','35days','30days','50days'], 'Discount':[1000,2300,1200,2000,1200,1000,2000] } df = pd.DataFrame[technologies] print[df]
4 – Giá trị Boolean. xóa các hàng trùng lặp trên DataFrame hiện tại khi nó là True. Theo mặc định Saiimport pandas as pd import numpy as np technologies = { 'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"], 'Fee' :[20000,25000,22000,30000,22000,20000,30000], 'Duration':['30days','40days','35days','50days','35days','30days','50days'], 'Discount':[1000,2300,1200,2000,1200,1000,2000] } df = pd.DataFrame[technologies] print[df]
5 – Giá trị Boolean, theo mặc định là Saiimport pandas as pd import numpy as np technologies = { 'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"], 'Fee' :[20000,25000,22000,30000,22000,20000,30000], 'Duration':['30days','40days','35days','50days','35days','30days','50days'], 'Discount':[1000,2300,1200,2000,1200,1000,2000] } df = pd.DataFrame[technologies] print[df]
Bây giờ, hãy tạo một DataFrame với một vài hàng trùng lặp trên các cột. Khung dữ liệu của chúng tôi chứa các tên cột
import pandas as pd
import numpy as np
technologies = {
'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"],
'Fee' :[20000,25000,22000,30000,22000,20000,30000],
'Duration':['30days','40days','35days','50days','35days','30days','50days'],
'Discount':[1000,2300,1200,2000,1200,1000,2000]
}
df = pd.DataFrame[technologies]
print[df]
6,
import pandas as pd
import numpy as np
technologies = {
'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"],
'Fee' :[20000,25000,22000,30000,22000,20000,30000],
'Duration':['30days','40days','35days','50days','35days','30days','50days'],
'Discount':[1000,2300,1200,2000,1200,1000,2000]
}
df = pd.DataFrame[technologies]
print[df]
7,
import pandas as pd
import numpy as np
technologies = {
'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"],
'Fee' :[20000,25000,22000,30000,22000,20000,30000],
'Duration':['30days','40days','35days','50days','35days','30days','50days'],
'Discount':[1000,2300,1200,2000,1200,1000,2000]
}
df = pd.DataFrame[technologies]
print[df]
8 và
import pandas as pd
import numpy as np
technologies = {
'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"],
'Fee' :[20000,25000,22000,30000,22000,20000,30000],
'Duration':['30days','40days','35days','50days','35days','30days','50days'],
'Discount':[1000,2300,1200,2000,1200,1000,2000]
}
df = pd.DataFrame[technologies]
print[df]
9
import pandas as pd
import numpy as np
technologies = {
'Courses':["Spark","PySpark","Python","pandas","Python","Spark","pandas"],
'Fee' :[20000,25000,22000,30000,22000,20000,30000],
'Duration':['30days','40days','35days','50days','35days','30days','50days'],
'Discount':[1000,2300,1200,2000,1200,1000,2000]
}
df = pd.DataFrame[technologies]
print[df]
Sản lượng dưới sản lượng
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
83. Pandas thả các hàng trùng lặp
Bạn có thể sử dụng
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
6 mà không cần bất kỳ đối số nào để loại bỏ các hàng có cùng giá trị trên tất cả các cột. Nó nhận các giá trị mặc định là
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
81 và
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
82. Ví dụ dưới đây trả về bốn hàng sau khi xóa các hàng trùng lặp trong DataFrame của chúng tôi
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
2Sản lượng dưới sản lượng
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
34. Bỏ các hàng trùng lặp và giữ hàng cuối cùng
Nếu bạn muốn chọn tất cả các hàng trùng lặp và lần xuất hiện cuối cùng của chúng, bạn phải chuyển một đối số giữ là
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
83. Ví dụ,
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
84
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
6Sản lượng dưới sản lượng
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
75. Xóa tất cả các hàng trùng lặp khỏi Pandas DataFrame
Bạn có thể đặt
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
85 trong hàm
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
86 để xóa tất cả các hàng trùng lặp. cho E. x,
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
87
# Below are quick example
# keep first duplicate row
df2 = df.drop_duplicates[]
# Using DataFrame.drop_duplicates[] to keep first duplicate row
df2 = df.drop_duplicates[keep='first']
# keep last duplicate row
df2 = df.drop_duplicates[ keep='last']
# Remove all duplicate rows
df2 = df.drop_duplicates[keep=False]
# Delete duplicate rows based on specific columns
df2 = df.drop_duplicates[subset=["Courses", "Fee"], keep=False]
# Drop duplicate rows in place
df.drop_duplicates[inplace=True]
# Using DataFrame.apply[] and lambda function
df2 = df.apply[lambda x: x.astype[str].str.lower[]].drop_duplicates[subset=['Courses', 'Fee'], keep='first']
1Sản lượng dưới sản lượng
# Below are quick example
# keep first duplicate row
df2 = df.drop_duplicates[]
# Using DataFrame.drop_duplicates[] to keep first duplicate row
df2 = df.drop_duplicates[keep='first']
# keep last duplicate row
df2 = df.drop_duplicates[ keep='last']
# Remove all duplicate rows
df2 = df.drop_duplicates[keep=False]
# Delete duplicate rows based on specific columns
df2 = df.drop_duplicates[subset=["Courses", "Fee"], keep=False]
# Drop duplicate rows in place
df.drop_duplicates[inplace=True]
# Using DataFrame.apply[] and lambda function
df2 = df.apply[lambda x: x.astype[str].str.lower[]].drop_duplicates[subset=['Courses', 'Fee'], keep='first']
26. Xóa các hàng trùng lặp dựa trên các cột cụ thể
Để xóa các hàng trùng lặp trên cơ sở nhiều cột, hãy chỉ định tất cả các tên cột dưới dạng danh sách. Bạn có thể đặt
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
85 trong hàm
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
86 để xóa tất cả các hàng trùng lặp
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
0Mang lại đầu ra tương tự như trên
7. Thả các hàng trùng lặp vào vị trí
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
1Sản lượng dưới sản lượng
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
38. Xóa các hàng trùng lặp bằng DataFrame. áp dụng [] và Hàm Lambda
Bạn có thể xóa các hàng trùng lặp bằng hàm
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
7 và
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
21 để chuyển đổi DataFrame thành chữ thường và sau đó áp dụng chuỗi thấp hơn
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
3Mang lại sản lượng tương tự như trên
9. Hoàn thành ví dụ để loại bỏ các hàng trùng lặp trong DataFrame
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
4Phần kết luận
Trong bài viết này, bạn đã học cách thả/xóa/xóa các hàng trùng lặp bằng cách sử dụng hàm
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
5,
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
7 và
# Syntax of drop_duplicates
DataFrame.drop_duplicates[subset=None, keep='first', inplace=False, ignore_index=False]
21 với các ví dụ