Pandas DataFrames से कॉलम को कुशलतापूर्वक हटाना
Python में डेटा हेरफेर के लिए Pandas DataFrames एक आधारशिला हैं। अक्सर, आपको अपने वर्तमान विश्लेषण के लिए अप्रासंगिक कॉलम निकालने की आवश्यकता होगी। यह लेख आपके Pandas DataFrames से कॉलम को हटाने के कई तरीकों का विवरण देता है, स्पष्ट उदाहरण प्रदान करता है और सर्वोत्तम प्रथाओं को उजागर करता है।
विषयवस्तु की तालिका:
drop()
विधि का उपयोग करना- एक से अधिक कॉलम हटाना
del
कीवर्ड का उपयोग करनाpop()
विधि का उपयोग करना- सर्वोत्तम प्रथाएँ और विचार
- अक्सर पूछे जाने वाले प्रश्न (FAQ)
drop()
विधि का उपयोग करना
कॉलम हटाने के लिए drop()
विधि सबसे बहुमुखी और अनुशंसित तरीका है। यह लचीलापन और नियंत्रण प्रदान करता है, जिससे आप DataFrame को मौके पर ही संशोधित कर सकते हैं या उसकी प्रतिलिपि बना सकते हैं।
import pandas as pd
# नमूना DataFrame
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6], 'col3': [7, 8, 9]}
df = pd.DataFrame(data)
print("मूल DataFrame:n", df)
# 'col2' को हटाना और एक नया DataFrame बनाना
df_dropped = df.drop('col2', axis=1) # axis=1 कॉलम हटाने को निर्दिष्ट करता है
print("n'col2' को हटाने के बाद DataFrame (नया DataFrame):n", df_dropped)
# 'col3' को मौके पर ही हटाना
df.drop('col3', axis=1, inplace=True)
print("n'col3' को हटाने के बाद DataFrame (मौके पर ही):n", df)
axis=1
महत्वपूर्ण है, जो कॉलम हटाने को इंगित करता है (axis=0
पंक्तियों के लिए है)। inplace=True
मूल DataFrame को संशोधित करता है; अन्यथा, एक प्रतिलिपि लौटा दी जाती है।
एक से अधिक कॉलम हटाना
drop()
आसानी से कई कॉलम को संभालता है। बस कॉलम नामों की एक सूची प्रदान करें।
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6], 'col3': [7, 8, 9], 'col4': [10, 11, 12]}
df = pd.DataFrame(data)
# एक से अधिक कॉलम हटाना
df_dropped = df.drop(['col2', 'col4'], axis=1)
print("nएक से अधिक कॉलम हटाने के बाद DataFrame:n", df_dropped)
del
कीवर्ड का उपयोग करना
del
एकल कॉलम को हटाने का एक संक्षिप्त तरीका प्रदान करता है लेकिन सीधे DataFrame को संशोधित करता है बिना कोई प्रतिलिपि बनाए। सावधानी से प्रयोग करें!
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6], 'col3': [7, 8, 9]}
df = pd.DataFrame(data)
# del का उपयोग करके 'col2' को हटाना
del df['col2']
print("ndel का उपयोग करके 'col2' को हटाने के बाद DataFrame:n", df)
pop()
विधि का उपयोग करना
pop()
एक कॉलम को हटा देता है और उसे Pandas Series के रूप में लौटाता है। उपयोगी है जब आपको हटाए गए कॉलम और संशोधित DataFrame दोनों की आवश्यकता होती है।
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6], 'col3': [7, 8, 9]}
df = pd.DataFrame(data)
# pop() का उपयोग करके 'col2' को हटाना
popped_column = df.pop('col2')
print("n'col2' को पॉप करने के बाद DataFrame:n", df)
print("nपॉप किया गया कॉलम:n", popped_column)
सर्वोत्तम प्रथाएँ और विचार
अधिकांश परिदृश्यों के लिए, इसकी लचीलेपन और प्रतिलिपि बनाने की क्षमता के कारण drop()
विधि को प्राथमिकता दी जाती है, जिससे मूल DataFrame में अनपेक्षित संशोधनों को रोका जा सकता है। del
केवल एकल-कॉलम हटाने के लिए उपयुक्त है जहाँ मौके पर ही संशोधन स्वीकार्य है। pop()
उन स्थितियों के लिए एक विशेष विधि है जहाँ हटाए गए कॉलम के डेटा की आवश्यकता होती है।
अक्सर पूछे जाने वाले प्रश्न (FAQ)
- प्रश्न: यदि मैं एक गैर-मौजूद कॉलम को हटाने का प्रयास करता हूँ तो क्या होता है?
उत्तर:drop()
औरdel
दोनों द्वाराKeyError
उठाया जाता है। - प्रश्न: क्या मैं किसी शर्त के आधार पर कॉलम हटा सकता हूँ?
उत्तर: हाँ, केवल वांछित कॉलम वाले एक नए DataFrame का निर्माण बूलियन इंडेक्सिंग या कॉलम चयन का उपयोग करके करें। - प्रश्न: क्या इन विधियों के बीच कोई प्रदर्शन अंतर है?
उत्तर: एकल कॉलम के लिए, अंतर आमतौर पर नगण्य होते हैं। कई कॉलम के लिए,drop()
आम तौर पर अधिक कुशल होता है।