मान लीजिए आपके पास एक डेटाफ्रेम है:
0 1 2 0 10 20 30 1 40 50 60 2 70 80 90
डेटाफ्रेम के विकर्ण को 1 से बदलने का परिणाम:
0 1 2 0 1 20 30 1 40 1 60 2 70 80 1
समाधान
इसे हल करने के लिए, हम नीचे दिए गए चरणों का पालन करेंगे:
एक डेटाफ्रेम परिभाषित करें
सभी पंक्तियों और कॉलम तक पहुंचने के लिए नेस्टेड फॉर लूप बनाएं
for i in range(len(df)):
for j in range(len(df)):
विकर्ण से मिलान करने के लिए if शर्त की जांच करें, यदि मेल खाता है तो स्थिति को 1 से बदलें
if i == j:
df.iloc[i, j] = 1
उदाहरण
बेहतर समझ के लिए नीचे दिए गए कार्यान्वयन को देखें:
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)
आउटपुट
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