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

दिए गए DataFrame में किसी भी रैंडम विषम इंडेक्स पंक्तियों का चयन करने के लिए पायथन प्रोग्राम लिखें


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

DataFrame is:  id mark age
0 1 70 12
1 2 60 13
2 3 40 12
3 4 50 13
4 5 80 12
5 6 90 13
6 7 60 12

और, किसी भी रैंडम विषम इंडेक्स पंक्ति का चयन करने का परिणाम है:

Random odd index row is:  id 4
mark 50
age 13

समाधान

इसे हल करने के लिए, हम नीचे दिए गए चरणों का पालन करेंगे:

  • एक डेटाफ्रेम परिभाषित करें

  • विषम इंडेक्स मानों को जोड़ने के लिए एक खाली सूची बनाएं

  • सभी इंडेक्स तक पहुंचने के लिए फॉर लूप बनाएं

for i in df.index.values:
  • विषम इंडेक्स की जांच करने के लिए if शर्त बनाएं। यदि यह मेल खाता है, तो मानों को सूची में जोड़ें

if(i%2==1):
    l.append(i)
  • सूची से कोई एक रैंडम मान उत्पन्न करें और इसे random_index में संग्रहीत करें

random_index = rand.choice(l)
  • अंत में, iloc का उपयोग करके विषम इंडेक्स पंक्ति प्रिंट करें

df.iloc[random_index]

उदाहरण

बेहतर समझ के लिए नीचे दिए गए कार्यान्वयन को देखें:

import pandas as pd
import random as rand
df = pd.DataFrame({'id': [1,2,3,4,5,6,7],
                   'mark': [70,60,40,50,80,90,60],
                   'age': [12,13,12,13,12,13,12]})
print("DataFrame is:\n", df)
l = []
for i in df.index.values:
    if(i%2==1):
        l.append(i)
random_index = rand.choice(l)
print("Random odd index row is: \n", df.iloc[random_index])

आउटपुट

DataFrame is:  id mark age
0 1 70 12
1 2 60 13
2 3 40 12
3 4 50 13
4 5 80 12
5 6 90 13
6 7 60 12
Random odd index row is:  id 4
mark 50
age 13
Name: 3, dtype: int64

  1. - पायथन प्रोग्राम: Series में विषम इंडेक्स स्थितियों को यादृच्छिक अपरकेस वॉवेल से बदलें

    समस्या विवरण Series के सभी विषम (odd) इंडेक्स (1, 3, 5...) पर मौजूद मानों को यादृच्छिक बड़े अक्षर वाले वॉवेल (A, E, I, O, U) से बदलें। इनपुट Series 0 1 1 2 2 3 3 4 4 5 dtype: int64 संभावित आउटपुट (यादृच्छिक) 0 1 1 O 2 3 3 E 4 5 dtype: object समाधान Series बनाएं।

  1. - पायथन प्रोग्राम: Series में पांच यादृच्छिक सम-इंडेक्स लोअरकेस अक्षर उत्पन्न करें

    समस्या विवरण अंग्रेजी वर्णमाला के लोअरकेस अक्षरों में से सम इंडेक्स (0,2,4...) वाले अक्षरों में से यादृच्छिक 5 चुनकर Series बनाएं। समाधान 1: स्लाइसिंग [::2] और random.sample() (सुझावित) import pandas as pd import string import random as r chars = string.ascii_lowercase print(लोअरकेस अक्षर:, chars)

  1. - पायथन में दी गई दो लिस्ट के अंतिम इंडेक्स तक पहुंचने की लागत खोजने का प्रोग्राम

    मान लीजिए हमारे पास nums0 और nums1 नामक समान लंबाई की दो संख्याओं की लिस्ट हैं और दो अन्य मान d (दूरी) और c (लागत) हैं। यदि हम इंडेक्स 0 से nums0 या nums1 में से किसी एक से शुरू करते हैं और किसी भी लिस्ट के अंतिम इंडेक्स पर समाप्त होना चाहते हैं। अब, प्रत्येक राउंड में, हम cost की लागत पर दूसरी लिस्