पाइथन में डेटा मैनिपुलेशन के लिए Pandas DataFrames आवश्यक हैं। व्यक्तिगत सेल मानों को कुशलतापूर्वक एक्सेस करना एक सामान्य कार्य है। यह लेख इन मानों को पुनः प्राप्त करने के कई तरीकों का पता लगाता है, उनकी ताकत और कमजोरियों को उजागर करता है।
विषयसूची
- पूर्णांक-आधारित अनुक्रमण:
iloc
iat
औरat
एकल-सेल पहुँच के लिए- कॉलम और अनुक्रमणिका के माध्यम से पहुँच:
df['col_name'].iloc[]
पूर्णांक-आधारित अनुक्रमण: iloc
.iloc
बहुमुखी पूर्णांक-आधारित अनुक्रमण प्रदान करता है। यह पंक्तियों और स्तंभों दोनों के लिए शून्य-आधारित अनुक्रमण का उपयोग करता है।
import pandas as pd
data = {'col1': [10, 20, 30], 'col2': [40, 50, 60]}
df = pd.DataFrame(data)
# पंक्ति 1, स्तंभ 0 (दूसरी पंक्ति, पहला स्तंभ) पर मान तक पहुँचें
value = df.iloc[1, 0]
print(f"iloc का उपयोग करके मान: {value}") # आउटपुट: 20
# पंक्ति 0, स्तंभ 1 (पहली पंक्ति, दूसरा स्तंभ) पर मान तक पहुँचें
value = df.iloc[0, 1]
print(f"iloc का उपयोग करके मान: {value}") # आउटपुट: 40
.iloc
कुशल है, विशेष रूप से बड़े DataFrames के लिए, और संख्यात्मक सूचकांकों का उपयोग करके सेल चयन पर सटीक नियंत्रण प्रदान करता है।
iat
और at
एकल-सेल पहुँच के लिए
.iat
और .at
संक्षिप्त एकल-सेल पहुँच प्रदान करते हैं। .iat
पूर्णांक-आधारित अनुक्रमण का उपयोग करता है, जबकि .at
लेबल-आधारित अनुक्रमण (कॉलम नाम) का उपयोग करता है।
import pandas as pd
data = {'col1': [10, 20, 30], 'col2': [40, 50, 60]}
df = pd.DataFrame(data)
# iat का उपयोग करके पंक्ति 1, स्तंभ 0 पर मान प्राप्त करें
value = df.iat[1, 0]
print(f"iat का उपयोग करके मान: {value}") # आउटपुट: 20
# at का उपयोग करके पंक्ति 0, स्तंभ 'col2' पर मान प्राप्त करें
value = df.at[0, 'col2']
print(f"at का उपयोग करके मान: {value}") # आउटपुट: 40
ये विधियाँ .iloc
की तुलना में एकल-सेल पहुँच के लिए तेज़ हैं क्योंकि वे एक स्केलर मान लौटाते हैं, न कि सीरीज़ या DataFrame।
कॉलम और अनुक्रमणिका के माध्यम से पहुँच: df['col_name'].iloc[]
यह दृष्टिकोण पहले एक कॉलम का चयन करता है और फिर उस कॉलम के अंतर्निहित NumPy सरणी के भीतर एक विशिष्ट पंक्ति तक पहुँचता है। यह पिछली विधियों की तुलना में कम लचीला और कुशल है।
import pandas as pd
data = {'col1': [10, 20, 30], 'col2': [40, 50, 60]}
df = pd.DataFrame(data)
# 'col1' की पंक्ति 1 पर मान तक पहुँचें
value = df['col1'].iloc[1] # .values[] से अधिक कुशल
print(f"कॉलम पर iloc का उपयोग करके मान: {value}") # आउटपुट: 20
हालांकि यह सुविधाजनक लग सकता है, दक्षता और स्पष्टता के लिए चयनित कॉलम पर सीधे .iloc
का उपयोग करना आम तौर पर बेहतर होता है।
संक्षेप में, .iloc
, .iat
, और .at
DataFrame सेलों तक पहुँचने के कुशल और पठनीय तरीके प्रदान करते हैं। चयनित कॉलम पर .iloc
का उपयोग करना .values[]
के उपयोग पर आम तौर पर बेहतर होता है। अपनी आवश्यकताओं और कोडिंग शैली के लिए सबसे उपयुक्त विधि चुनें।