pandas
DataFrame तक पहुँचने के लिए .ix, .iloc, .loc, .at और .iat का उपयोग करना
खोज…
.Iloc का उपयोग करना
.iloc डेटाफ़्रेम को डेटा पढ़ने और लिखने के लिए पूर्णांक का उपयोग करता है।
सबसे पहले, एक DataFrame बनाएँ:
df = pd.DataFrame({'one': [1, 2, 3, 4, 5],
'two': [6, 7, 8, 9, 10],
}, index=['a', 'b', 'c', 'd', 'e'])
यह डेटाफ़्रेम ऐसा दिखता है:
one two
a 1 6
b 2 7
c 3 8
d 4 9
e 5 10
अब हम मूल्यों को पढ़ने और लिखने के लिए .iloc का उपयोग कर सकते हैं। आइए पढ़ते हैं पहली पंक्ति, पहला कॉलम:
print df.iloc[0, 0]
यह प्रिंट होगा:
1
हम मूल्य भी निर्धारित कर सकते हैं। कुछ नया करने के लिए दूसरी पंक्ति, दूसरी पंक्ति सेट करें:
df.iloc[1, 1] = '21'
और फिर क्या हुआ देखने के लिए एक नज़र:
print df
one two
a 1 6
b 2 21
c 3 8
d 4 9
e 5 10
.Loc का उपयोग करना
.loc डेटा को पढ़ने और लिखने के लिए लेबल का उपयोग करता है।
चलो एक DataFrame सेटअप करें:
df = pd.DataFrame({'one': [1, 2, 3, 4, 5],
'two': [6, 7, 8, 9, 10],
}, index=['a', 'b', 'c', 'd', 'e'])
फिर हम आकृति पर एक नज़र रखने के लिए DataFrame को प्रिंट कर सकते हैं:
print df
यह आउटपुट करेगा
one two
a 1 6
b 2 7
c 3 8
d 4 9
e 5 10
हम .loc के साथ डेटा एक्सेस करने के लिए कॉलम और रो लेबल का उपयोग करते हैं। मान 33 पर पंक्ति 'c', कॉलम 'दो' सेट करें:
df.loc['c', 'two'] = 33
यह वही है जो DataFrame अब दिखता है:
one two
a 1 6
b 2 7
c 3 33
d 4 9
e 5 10
ध्यान दें, df['two'].loc['c'] = 33
का उपयोग करते हुए। df.loc['c', 'two']
df['two'].loc['c'] = 33
एक चेतावनी की सूचना नहीं दे सकता है, और यहां तक कि काम भी कर सकता है, हालाँकि, df.loc['c', 'two']
का उपयोग करना सही ढंग से काम करने की गारंटी है। , जबकि पूर्व नहीं है।
हम उदाहरण के लिए, डेटा के स्लाइस पढ़ सकते हैं
print df.loc['a':'c']
ग को पंक्तियों को मुद्रित करेगा। यह समावेशी है।
one two
a 1 6
b 2 7
c 3 8
और अंत में, हम दोनों एक साथ कर सकते हैं:
print df.loc['b':'d', 'two']
स्तंभ 'दो' के बी से आउटपुट पंक्तियाँ लेगा। ध्यान दें कि कॉलम लेबल मुद्रित नहीं है।
b 7
c 8
d 9
यदि .loc को एक पूर्णांक तर्क के साथ प्रदान किया जाता है जो कि एक लेबल नहीं है तो यह कुल्हाड़ियों के पूर्णांक अनुक्रमण (.iloc के व्यवहार) का संदर्भ देता है। यह मिश्रित लेबल और पूर्णांक अनुक्रमण संभव बनाता है:
df.loc['b', 1]
2 कॉलम में मान लौटाएंगे (पंक्ति में 0 से शुरू होने वाला सूचकांक) 'b':
7