मान लें, आपके पास डेटाफ़्रेम है,
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