Giả sử, bạn có một khung dữ liệu
0 1 2
0 10 20 30 1 40 50 60 2 70 80 90
Kết quả cho việc thay thế 1 bằng đường chéo của khung dữ liệu là -
0 1 2 0 1 20 30 1 40 1 60 2 70 80 1
Giải pháp
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước dưới đây -
-
Xác định khung dữ liệu
-
Tạo vòng lặp for lồng nhau để truy cập tất cả các hàng và cột,
for i in range(len(df)): for j in range(len(df)):
-
Kiểm tra xem điều kiện có khớp với các đường chéo hay không, nếu nó khớp thì hãy thay thế vị trí bằng 1. Nó được xác định bên dưới,
if i == j: df.iloc[i ,j] = 1
Ví dụ
Hãy cùng chúng tôi xem cách triển khai bên dưới để hiểu rõ hơn,
import pandas as pd import numpy as np data = [[10,20,30],[40,50,60],[70,80,90]] df = pd.DataFrame(data) print("Original DataFrame is\n ", df) for i in range(len(df)): for j in range(len(df)): if i == j: df.iloc[i ,j] = 1 print("Modified DataFrame is\n" ,df)
Đầu ra
Original DataFrame is 0 1 2 0 10 20 30 1 40 50 60 2 70 80 90 Modified DataFrame is 0 1 2 0 1 20 30 1 40 1 60 2 70 80 1