Hướng dẫn can we compare two datasets in python? - chúng ta có thể so sánh hai tập dữ liệu trong python không?

Đối với bất kỳ ai làm việc trong vai trò phân tích, việc nhận yêu cầu so sánh dữ liệu sẽ quá quen thuộc. Cho dù đó là để chứng minh tính toàn vẹn của dữ liệu, việc phân phối dữ liệu thành công hoặc chỉ cố gắng hiểu sự khác biệt giữa hai tệp hoặc bộ dữ liệu, quá trình này hầu như sẽ luôn giống nhau.

Đôi khi, khi dữ liệu đủ nhỏ, việc đặt mỗi bộ dữ liệu vào một bảng tính và sau đó thực hiện một so sánh giữa các ô sẽ phải đủ.

Trong hướng dẫn ngắn này, bạn sẽ thấy cách so sánh các giá trị giữa hai khung dữ liệu gấu trúc. Bạn cũng sẽ quan sát cách so sánh các giá trị từ hai tệp đã nhập.

Bước 1: Chuẩn bị các bộ dữ liệu được so sánh

Để bắt đầu, hãy để nói rằng bạn có hai bộ dữ liệu sau mà bạn muốn so sánh:

Bộ dữ liệu đầu tiên:

product_1 price_1
máy tính1200
màn hình800
Máy in200
bàn350

Bộ dữ liệu thứ hai:

product_2 price_2
máy tính900
màn hình800
Máy in300
bàn350

Bộ dữ liệu thứ hai:

Mục tiêu cuối cùng là so sánh giá (tức là, Price_1 so với Price_2).

Bước 2: Tạo hai khung dữ liệu

import pandas as pd

data_1 = {'product_1': ['computer','monitor','printer','desk'],
                   'price_1': [1200,800,200,350]
                   }
df1 = pd.DataFrame(data_1)
print(df1)

data_2 = {'product_2': ['computer','monitor','printer','desk'],
                    'price_2': [900,800,300,350]
                    }
df2 = pd.DataFrame(data_2)
print (df2)

Dựa trên dữ liệu trên, sau đó bạn có thể tạo hai khung dữ liệu sau bằng mã này:

  product_1  price_1
0  computer     1200
1   monitor      800
2   printer      200
3      desk      350
  product_2  price_2
0  computer      900
1   monitor      800
2   printer      300
3      desk      350

Chạy mã trong Python và bạn sẽ nhận được hai DataFrames:

Bước 3: So sánh các giá trị giữa hai khung dữ liệu gấu trúc

Trong bước này, bạn sẽ cần nhập gói Numpy.

df1['new column that will contain the comparison results'] = np.where(condition,'value if true','value if false')

Sau đó, bạn có thể sử dụng mẫu này để thực hiện so sánh:

df1['prices_match'] = np.where(df1['price_1'] == df2['price_2'], 'True', 'False')

Ví dụ của chúng tôi, đây là cú pháp mà bạn có thể thêm để so sánh giá (tức là, Price_1 so với Price_2) giữa hai khung dữ liệu:

  • Bạn có thể nhận thấy rằng một cột mới (nghĩa là cột ‘price_match,) sẽ được tạo dưới khung dữ liệu đầu tiên (nghĩa là, DF1). Cột mới này sẽ chứa kết quả so sánh dựa trên các quy tắc sau:True
  • Nếu price_1 bằng giá_2, thì hãy gán giá trị của trueFalse

Nếu không, hãy gán giá trị sai

import pandas as pd
import numpy as np

data_1 = {'product_1': ['computer','monitor','printer','desk'],
                   'price_1': [1200,800,200,350]
                   }
df1 = pd.DataFrame(data_1)


data_2 = {'product_2': ['computer','monitor','printer','desk'],
                    'price_2': [900,800,300,350]
                    }
df2 = pd.DataFrame(data_2)


df1['price_2'] = df2['price_2'] #add the price_2 column from df2 to df1
df1['prices_match'] = np.where(df1['price_1'] == df2['price_2'], 'True', 'False') #create a new column in df1 to check if prices match

print(df1)

Dưới đây là mã Python hoàn chỉnh mà bạn có thể sử dụng để so sánh giá giữa hai khung dữ liệu:

  product_1  price_1  price_2  prices_match
0  computer     1200      900         False
1   monitor      800      800          True
2   printer      200      300         False
3      desk      350      350          True

Chạy mã và bạn sẽ nhận được so sánh giá sau:

Lưu ý rằng trong mã trên, cột Price_2 từ DataFrame thứ hai cũng được thêm vào khung dữ liệu đầu tiên để có được cái nhìn tốt hơn khi so sánh giá.

Bây giờ điều gì sẽ xảy ra nếu bạn muốn tìm thấy sự khác biệt thực tế giữa hai mức giá?

(price_1) - (price_2)

df1['price_diff'] = np.where(df1['price_1'] == df2['price_2'], 0, df1['price_1'] - df2['price_2'])

Trong trường hợp đó, bạn có thể thêm cú pháp sau vào mã của mình:

import pandas as pd
import numpy as np

data_1 = {'product_1': ['computer','monitor','printer','desk'],
                   'price_1': [1200,800,200,350]
                   }
df1 = pd.DataFrame(data_1)


data_2 = {'product_2': ['computer','monitor','printer','desk'],
                    'price_2': [900,800,300,350]
                    }
df2 = pd.DataFrame(data_2)


df1['price_2'] = df2['price_2'] #add the price_2 column from df2 to df1
df1['prices_match'] = np.where(df1['price_1'] == df2['price_2'], 'True', 'False') #create a new column in df1 to check if prices match
df1['price_diff'] = np.where(df1['price_1'] == df2['price_2'], 0, df1['price_1'] - df2['price_2']) #create a new column in df1 for price diff

print(df1)

Vì vậy, mã Python hoàn chỉnh sẽ trông như thế này:

  product_1  price_1  price_2  prices_match  price_diff
0  computer     1200      900         False         300
1   monitor      800      800          True           0
2   printer      200      300         False        -100
3      desk      350      350          True           0

Khi bạn chạy mã, bạn sẽ nhận được sự khác biệt thực tế giữa giá:

So sánh các giá trị từ hai tệp đã nhập

Cuối cùng, bạn sẽ thấy cách so sánh các giá trị từ hai tệp đã nhập.file_1:

product_1 price_1
máy tính1200
màn hình800
Máy in200
bàn350

Bộ dữ liệu thứ hai:file_2:

product_2 price_2
máy tính900
màn hình800
Máy in300
bàn350

Bộ dữ liệu thứ hai:

  • Mục tiêu cuối cùng là so sánh giá (tức là, Price_1 so với Price_2). is stored under this path: C:\Users\Ron\Desktop\Test\file_1.csv
  • Bước 2: Tạo hai khung dữ liệu is stored under this path: C:\Users\Ron\Desktop\Test\file_2.csv

Dựa trên dữ liệu trên, sau đó bạn có thể tạo hai khung dữ liệu sau bằng mã này:

  • File_1 sẽ được gán cho DF1 will be assigned to df1
  • File_2 sẽ được gán cho DF2 will be assigned to df2

Như trước đây, mục tiêu là so sánh giá (tức là, price_1 so với price_2).

Vì vậy, đây là mã Python hoàn chỉnh để so sánh các giá trị từ hai tệp đã nhập:

import pandas as pd
import numpy as np

data_1 = pd.read_csv(r'C:\Users\Ron\Desktop\Test\file_1.csv')
df1 = pd.DataFrame(data_1)

data_2 = pd.read_csv(r'C:\Users\Ron\Desktop\Test\file_2.csv')
df2 = pd.DataFrame(data_2)

df1['price_2'] = df2['price_2']
df1['prices_match'] = np.where(df1['price_1'] == df2['price_2'], 'True', 'False')
df1['price_diff'] = np.where(df1['price_1'] == df2['price_2'], 0, df1['price_1'] - df2['price_2'])

print(df1)

Khi bạn chạy mã trong Python (được điều chỉnh theo đường dẫn của bạn), bạn sẽ nhận được sự khác biệt giữa giá:

  product_1  price_1
0  computer     1200
1   monitor      800
2   printer      200
3      desk      350
  product_2  price_2
0  computer      900
1   monitor      800
2   printer      300
3      desk      350
0

Lưu ý cuối cùng khi so sánh DataFrames

Khi bạn so sánh hai DataFrames, bạn phải đảm bảo rằng số lượng bản ghi trong DataFrame đầu tiên khớp với số lượng bản ghi trong DataFrame thứ hai. Trong ví dụ của chúng tôi, mỗi trong số hai DataFrames có 4 bản ghi, với 4 sản phẩm và 4 giá.

Ví dụ, nếu một trong các DataFrames có 5 sản phẩm, trong khi DataFrame khác có 4 sản phẩm và bạn đã cố gắng chạy so sánh, thì bạn sẽ gặp lỗi sau:

ValueError: Chỉ có thể so sánh các đối tượng chuỗi được dán nhãn giống hệt nhau

Làm thế nào để bạn so sánh hai bộ dữ liệu trong Python?

Các bước để so sánh các giá trị giữa hai khung dữ liệu gấu trúc..
Bước 1: Chuẩn bị các bộ dữ liệu được so sánh. Để bắt đầu, hãy nói rằng bạn có hai bộ dữ liệu sau mà bạn muốn so sánh: ....
Bước 2: Tạo hai DataFrames. ....
Bước 3: So sánh các giá trị giữa hai DataFrames Pandas ..

Làm cách nào để so sánh hai bộ dữ liệu?

Khi bạn so sánh hai hoặc nhiều bộ dữ liệu, hãy tập trung vào bốn tính năng:..
Trung tâm. Về mặt đồ họa, tâm của phân phối là điểm mà khoảng một nửa số quan sát ở hai bên ..
Truyền đi. Sự lây lan của một phân phối đề cập đến sự biến đổi của dữ liệu. ....
Hình dạng. ....
Các tính năng bất thường ..

Làm cách nào để so sánh hai khung dữ liệu trong Python?

Phương pháp so sánh trong gấu trúc cho thấy sự khác biệt giữa hai khung dữ liệu.Nó so sánh hai khung dữ liệu, hàng thông minh và cột, và trình bày sự khác biệt cạnh nhau.Phương thức so sánh chỉ có thể so sánh các khung dữ liệu có cùng hình, với kích thước chính xác và các nhãn hàng và cột giống hệt nhau.. It compares two data frames, row-wise and column-wise, and presents the differences side by side. The compare method can only compare DataFrames of the same shape, with exact dimensions and identical row and column labels.

Làm thế nào để bạn biết nếu hai bộ dữ liệu giống nhau?

Hàm so sánhf () được sử dụng để so sánh hai khung dữ liệu trong R. Hàm có hai khung dữ liệu và sau đó kiểm tra chúng để so sánh.Tham số: DataSet1, DataSet2: Đây là hai bộ dữ liệu được so sánh.. The function takes two dataframes and then check them for comparison. Parameters: dataset1, dataset2: These are the two datasets to be compared.