Hướng dẫn compare two csv files and output difference python - so sánh hai tệp csv và sự khác biệt đầu ra python

Pandas là thư viện Python tốt nhất để tạo và điều khiển DataFrame. Bạn có thể đọc các tệp CSV, thao tác chúng và cũng xuất tệp CSV cuối cùng sau khi thao tác. Giả sử bạn có hai tệp CSV và muốn so sánh cả hai tệp. Bạn sẽ làm như thế nào? Trong toàn bộ hướng dẫn này, bạn sẽ tìm hiểu cách so sánh hai tệp CSV trong Python bằng cách sử dụng các phương pháp khác nhau.how to compare two CSV files in python using pandas using various methods.

Trong phần này, bạn sẽ biết tất cả các bước cần thiết để so sánh hai tệp CSV trong Python bằng Pandas. Chỉ cần làm theo tất cả các bước để hiểu rõ hơn.

Bước 1: Tạo tệp CSVS mẫu

Bước đầu tiên là tạo các tệp CSV mẫu cho phương thức. Đầu tiên tôi sẽ tạo hai khung dữ liệu mẫu và sau đó xuất mỗi DataFrame sang tệp CSV. Nó sẽ sử dụng để đọc tệp CSV và so sánh chúng.

Thực hiện các dòng mã bên dưới để tạo hai tệp CSVS mẫu.

import pandas as pd
data1 = {"country":["India","USA","UK","Germany"],"dial_code":[91,1,44,49]}
df1 = pd.DataFrame(data1)
df1.to_csv("data1.csv",index=None)
data2 = {"country":["India","USA","UK","Germany","Australia","China"],"dial_code":[91,1,44,49,61,86]}
df2 = pd.DataFrame(data2)
df2.to_csv("data2.csv",index=None)
print(df1,"\n")
print(df2)

Đầu ra

Hướng dẫn compare two csv files and output difference python - so sánh hai tệp csv và sự khác biệt đầu ra python
SPREAMFRAME CREATION để so sánh giữa chúng

Bước 2: Đọc & NBSP; Các tập tin CSV

Bước thứ hai là đọc các tệp CSV đã tạo. Bạn có thể đọc tệp CSV bằng phương thức pandas read_csv (). Chỉ cần chuyển tên tệp của tệp CSV. Nó sẽ chuyển đổi dữ liệu tệp CSV thành DataFrame để thao tác.

Chạy các dòng mã bên dưới để đọc các tệp CSV của bạn.

import pandas as pd
df1 = pd.read_csv("data1.csv")
df2 = pd.read_csv("data2.csv")
print(df1,"\n")
print(df2,"\n")

Đầu ra

  country  dial_code
0    India         91
1      USA          1
2       UK         44
3  Germany         49 

     country  dial_code
0      India         91
1        USA          1
2         UK         44
3    Germany         49
4  Australia         61
5      China         86 

SPREAMFRAME CREATION để so sánh giữa chúng

Bước 2: Đọc & NBSP; Các tập tin CSV

Bước thứ hai là đọc các tệp CSV đã tạo. Bạn có thể đọc tệp CSV bằng phương thức pandas read_csv (). Chỉ cần chuyển tên tệp của tệp CSV. Nó sẽ chuyển đổi dữ liệu tệp CSV thành DataFrame để thao tác.

Chạy các dòng mã bên dưới để đọc các tệp CSV của bạn. df[“boolean_result”].

Bước 3: Thực hiện phương pháp để so sánh hai tệp CSV trong Python bằng Pandas

# method 1 isin() metthod
import pandas as pd
df1 = pd.read_csv("data1.csv")
df2 = pd.read_csv("data2.csv")
c_result = df1[df1.apply(tuple,1).isin(df2.apply(tuple,1))]
print(c_result)

Đầu ra

Hướng dẫn compare two csv files and output difference python - so sánh hai tệp csv và sự khác biệt đầu ra python
SPREAMFRAME CREATION để so sánh giữa chúng

Bước 2: Đọc & NBSP; Các tập tin CSV

Bước thứ hai là đọc các tệp CSV đã tạo. Bạn có thể đọc tệp CSV bằng phương thức pandas read_csv (). Chỉ cần chuyển tên tệp của tệp CSV. Nó sẽ chuyển đổi dữ liệu tệp CSV thành DataFrame để thao tác.

Chạy các dòng mã bên dưới để đọc các tệp CSV của bạn.

Bước 3: Thực hiện phương pháp để so sánh hai tệp CSV trong Python bằng Pandas

# method 2 merge() method
import pandas as pd
df1 = pd.read_csv("data1.csv")
df2 = pd.read_csv("data2.csv")
c_result_m = pd.merge(df1,df2)
print(c_result_m)

Đầu ra

Hướng dẫn compare two csv files and output difference python - so sánh hai tệp csv và sự khác biệt đầu ra python
SPREAMFRAME CREATION để so sánh giữa chúng

Bước 2: Đọc & NBSP; Các tập tin CSV

Bước thứ hai là đọc các tệp CSV đã tạo. Bạn có thể đọc tệp CSV bằng phương thức pandas read_csv (). Chỉ cần chuyển tên tệp của tệp CSV. Nó sẽ chuyển đổi dữ liệu tệp CSV thành DataFrame để thao tác.

Chạy các dòng mã bên dưới để đọc các tệp CSV của bạn.

Bước 3: Thực hiện phương pháp để so sánh hai tệp CSV trong Python bằng Pandas

Bây giờ các tệp CSV đã được đọc. Hãy để so sánh cả hai tệp. Bạn sẽ tìm hiểu các phương pháp khác nhau để so sánh với các tệp CSV trong Python.

Phương pháp 1: Sử dụng phương thức isin ()

Gói Pandas có hàm isin () cho phép bạn kiểm tra xem có bản ghi trong cả hai tệp CSV hay không. Nếu nó tìm thấy sau đó trả về true khác trả về sai. Sau đó, chúng ta có thể nhận được các giá trị bằng cách sử dụng DF [Hồi Boolean_result,].

Thực hiện các dòng mã bên dưới để so sánh hai tệp CSV.

Chúng ta có thể so sánh hai tệp CSV trong Python không?

Pandas cũng có một hàm hợp nhất () hữu ích trong việc so sánh hai tệp CSV. Nó thực hiện tham gia bên trong, tham gia bên ngoài hoặc cả hai tham gia trên các cột. Bạn chỉ cần vượt qua các khung dữ liệu bạn muốn so sánh dưới dạng danh sách bên trong phương thức hợp nhất (). Hàm sẽ so sánh và trả về DataFrame.. It performs an inner join, outer join or both join on columns. You have to just pass the dataframes you want to compare as a list inside the merge() method. The function will compare and returns the dataframe.

Làm cách nào để so sánh hai tệp để in sự khác biệt trong Python?

Approach..
Mở cả hai tệp ở chế độ đọc ..
Danh sách lưu trữ các chuỗi ..
Bắt đầu so sánh cả hai tệp với phương thức trợ giúp của giao lộ () cho các chuỗi chung ..
So sánh cả hai tệp cho sự khác biệt bằng cách sử dụng trong khi vòng lặp ..
Đóng cả hai tệp ..

Làm thế nào tôi có thể tìm thấy sự khác biệt giữa hai tệp CSV?

Nhấp vào nút "So sánh" để so sánh các tệp CSV của bạn!Bạn có thể chọn chỉ hiển thị các hàng có sự khác biệt hoặc để hiển thị tất cả (với mã màu để trực quan hóa sự khác biệt).Bạn cũng có thể so sánh trực tiếp hai tệp CSV bằng cách chỉ định URL của họ trong tham số URL1 và URL2.

Làm cách nào để so sánh hai cột trong các tệp CSV khác nhau trong Python?

Bạn phải làm việc trên các cột.Đọc cả hai cột của tệp CSV của bạn (không có tiêu đề) thành 2 Python Set S ...
Sử dụng '\ t' làm dấu phân cách của bạn, vì tệp của bạn được phân định bởi các tab, không phải dấu phẩy ..
Nhận tất cả các mục từ cả hai danh sách dưới dạng một bộ, sau đó nhận giao điểm của hai bộ ..
In chúng ..