Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python – Thay thế giá trị DataFrame bằng giá trị từ DataFrame khác

Thay thế giá trị trong DataFrame này bằng giá trị từ DataFrame khác sử dụng phương thức replace().

Tạo hai DataFrame

import pandas as pd

dataFrame1 = pd.DataFrame({
    "Car": ["Audi", "Lamborghini"],
    "Place": ["US", "UK"],
    "Units": [200, 500]
})

dataFrame2 = pd.DataFrame({
    "Car": ["BMW", "Lexus"],
    "Place": ["India", "Australia"],
    "Units": [800, 1000]
})

print("DataFrame 1:\n", dataFrame1)
print("\nDataFrame 2:\n", dataFrame2)

Thay thế giá trị

# Lấy giá trị từ DataFrame2 (hàng 1, cột Car) -> "Lexus"
i = dataFrame2['Car'][1]

# Lấy giá trị thay thế từ DataFrame1 (hàng 0, cột Car) -> "Audi"
j = dataFrame1['Car'][0]

# Thay thế "Lexus" bằng "Audi" trong DataFrame2
dataFrame2 = dataFrame2.replace(i, j)

print("\nDataFrame 2 sau khi cập nhật:\n", dataFrame2)

Kết quả

DataFrame 1...
         Car Place  Units
0       Audi    US    200
1  Lamborghini    UK    500

DataFrame 2...
    Car      Place  Units
0   BMW      India    800
1  Lexus  Australia   1000

DataFrame 2 sau khi cập nhật...
    Car      Place  Units
0   BMW      India    800
1  Audi  Australia   1000

Giải thích

  • replace(old, new) thay thế tất cả giá trị old bằng new trong toàn DataFrame.
  • Ví dụ chỉ thay thế giá trị ô cụ thể, nhưng replace hoạt động toàn cục (toàn DataFrame).
  • Để thay thế chính xác một ô, dùng dataFrame2.at[1, 'Car'] = j hoặc dataFrame2.loc[1, 'Car'] = j.

Cảnh báo: replace() sẽ thay thế mọi lần xuất hiện của giá trị cũ, không chỉ ô mục tiêu.