Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

दिए गए DataFrame के विकर्ण को 1 से संशोधित करने के लिए पायथन प्रोग्राम लिखें


मान लीजिए आपके पास एक डेटाफ्रेम है:

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

  1. - पायथन में डेट सीरीज से वर्ष का दिन (Day of Year) निकालें

    समस्या विवरण दिए गए डेट रेंज की प्रत्येक तारीख के लिए वर्ष का दिन (1-366) प्राप्त करें। समाधान pd.date_range() से डेट सीरीज बनाएं (उदाहरण: 2020-01-10 से 5 पीरियड्स)। Series में बदलें। .dt.dayofyear एक्सेसर का उपयोग करें। पूर्ण कोड उदाहरण import pandas as pd # 2020-01-10 से शुरू करके 5 दिन

  1. - पायथन प्रोग्राम: संख्या में सभी 0 को 5 से बदलें (अग्रणी शून्य को छोड़कर)

    समस्या विवरण एक पूर्णांक N दिया गया है, इसमें आने वाले सभी 0 को 5 से बदलें। लेकिन अग्रणी (leading) शून्यों को अनदेखा करें। उदाहरण 1 इनपुट: N = 1007 आउटपुट: 1557 व्याख्या: दो 0 को 5 से बदला गया। उदाहरण 2 इनपुट: N = 00105 आउटपुट: 155 व्याख्या: अग्रणी 00 को अनदेखा किया, बीच के 0 को 5 से बदला। समाधान

  1. - पायथन प्रोग्राम: दी गई संख्या N में अंकों की कुल संख्या गिनें

    समस्या विवरण एक संख्या N दी गई है, उसमें कुल कितने अंक (digits) हैं, यह गिनें। अग्रणी शून्य नहीं गिने जाते। उदाहरण 1 N = 891452 आउटपुट: 6 उदाहरण 2 N = 0074515 आउटपुट: 5 व्याख्या: अग्रणी 00 गिने नहीं जाते। समाधान 1: लूप और पूर्णांक विभाजन (गणितीय) 0: count += 1 n //= 10 return