अक्सर किसी DataFrame में ऐसे कॉलम होते हैं जो आपके विश्लेषण के लिए उपयोगी नहीं होते। ऐसे कॉलमों को DataFrame से हटाना चाहिए ताकि आप शेष कॉलमों पर बेहतर ध्यान दे सकें।
कॉलमों को उनके लेबल नाम और संबद्ध axis बताकर, या सीधे index या कॉलम नाम बताकर हटाया जा सकता है। मल्टी-इंडेक्स का उपयोग करते समय, अलग-अलग स्तरों के लेबल स्तर (level) बताकर हटाए जा सकते हैं।
.drop() मेथड
आइए missing values की गिनती की तुलना dataframe के आकार से करें। आप देखेंगे कि county_name कॉलम में जितनी पंक्तियाँ हैं उतनी ही missing values हैं, यानी इसमें केवल missing values ही हैं।
क्योंकि इसमें कोई उपयोगी जानकारी नहीं है, इस कॉलम को .drop() मेथड से हटाया जा सकता है।
कॉलम नाम बताने के अलावा, आपको यह भी बताना होगा कि आप columns axis से हटा रहे हैं और यह ऑपरेशन in place होना चाहिए, ताकि अलग से असाइनमेंट स्टेटमेंट की जरूरत न पड़े, जैसा नीचे दिखाया गया है:
ri.drop('county_name',
axis='columns', inplace=True)संचालित द्वारा
.dropna() मेथड
.dropna() मेथड उन पंक्तियों को हटाने का बेहतरीन तरीका है जिनमें missing values मौजूद हैं।
उदाहरण के लिए, ऊपर दिए गए डेटासेट का उपयोग करते हुए मान लें कि stop_date और stop_time कॉलम हमारे विश्लेषण के लिए महत्वपूर्ण हैं, और इसलिए उनके बिना कोई भी पंक्ति हमारे लिए बेकार है।
state stop_date stop_time driver_gender driver_race
0RI2005-01-0412:55M White
1RI2005-01-2323:15M White
2RI2005-02-1704:15M White
3RI2005-02-2017:15M White
4RI2005-02-2401:20F White
संचालित द्वारा
हम pandas को यह बता सकते हैं कि जिन पंक्तियों में stop_date या stop_time कॉलम में missing value है, उन्हें हटा दे। क्योंकि हम subset निर्दिष्ट करते हैं, .dropna() मेथड केवल इन्हीं दो कॉलमों को ध्यान में रखता है यह तय करते समय कि किन पंक्तियों को हटाना है।
ri.dropna(subset=['stop_date','stop_time'], inplace=True)संचालित द्वारा
कॉलम ड्रॉप करने का इंटरैक्टिव उदाहरण
इस उदाहरण में, आप county_name कॉलम को ड्रॉप करेंगे क्योंकि इसमें केवल missing values हैं, और state कॉलम को ड्रॉप करेंगे क्योंकि सभी ट्रैफिक स्टॉप एक ही राज्य (Rhode Island) में हुए थे। इसलिए, ये कॉलम कोई उपयोगी जानकारी नहीं रखते और इन्हें हटाया जा सकता है। प्रत्येक कॉलम में missing values की संख्या आपके लिए कंसोल पर प्रिंट की गई है।
DataFrame के .shape की जाँच करें ताकि पंक्तियों और कॉलमों की संख्या पता चल सके।
.drop() मेथड में कॉलम नामों की सूची पास करके county_name और state, दोनों कॉलमों को ड्रॉप करें।
फिर से .shape जाँचें ताकि पुष्टि हो सके कि अब दो कॉलम कम हैं।
# Examine the shape of the DataFrameprint(ri.shape)# Drop the 'county_name' and 'state' columns
ri.drop(['county_name','state'], axis='columns', inplace=True)# Examine the shape of the DataFrame (again)print(ri.shape)संचालित द्वारा
जब आप ऊपर का कोड चलाते हैं, तो यह निम्नलिखित परिणाम देता है:
Python के साथ डेटा विश्लेषण की बुनियादी बातें सिर्फ चार घंटे में सीखें। यह ऑनलाइन पाठ्यक्रम Python इंटरफ़ेस का परिचय देगा और लोकप्रिय पैकेजों का अन्वेषण करेगा।
अक्सर किसी DataFrame में ऐसे कॉलम होते हैं जो आपके विश्लेषण के लिए उपयोगी नहीं होते। ऐसे कॉलमों को DataFrame से हटाना चाहिए ताकि आप शेष कॉलमों पर बेहतर ध्यान दे सकें।
कॉलमों को उनके लेबल नाम और संबद्ध axis बताकर, या सीधे index या कॉलम नाम बताकर हटाया जा सकता है। मल्टी-इंडेक्स का उपयोग करते समय, अलग-अलग स्तरों के लेबल स्तर (level) बताकर हटाए जा सकते हैं।
.drop()मेथडआइए missing values की गिनती की तुलना dataframe के आकार से करें। आप देखेंगे कि
county_nameकॉलम में जितनी पंक्तियाँ हैं उतनी ही missing values हैं, यानी इसमें केवल missing values ही हैं।क्योंकि इसमें कोई उपयोगी जानकारी नहीं है, इस कॉलम को
.drop()मेथड से हटाया जा सकता है।कॉलम नाम बताने के अलावा, आपको यह भी बताना होगा कि आप columns axis से हटा रहे हैं और यह ऑपरेशन in place होना चाहिए, ताकि अलग से असाइनमेंट स्टेटमेंट की जरूरत न पड़े, जैसा नीचे दिखाया गया है:
.dropna()मेथड.dropna()मेथड उन पंक्तियों को हटाने का बेहतरीन तरीका है जिनमें missing values मौजूद हैं।उदाहरण के लिए, ऊपर दिए गए डेटासेट का उपयोग करते हुए मान लें कि stop_date और stop_time कॉलम हमारे विश्लेषण के लिए महत्वपूर्ण हैं, और इसलिए उनके बिना कोई भी पंक्ति हमारे लिए बेकार है।
हम pandas को यह बता सकते हैं कि जिन पंक्तियों में
stop_dateयाstop_timeकॉलम में missing value है, उन्हें हटा दे। क्योंकि हम subset निर्दिष्ट करते हैं,.dropna()मेथड केवल इन्हीं दो कॉलमों को ध्यान में रखता है यह तय करते समय कि किन पंक्तियों को हटाना है।कॉलम ड्रॉप करने का इंटरैक्टिव उदाहरण
इस उदाहरण में, आप
county_nameकॉलम को ड्रॉप करेंगे क्योंकि इसमें केवल missing values हैं, औरstateकॉलम को ड्रॉप करेंगे क्योंकि सभी ट्रैफिक स्टॉप एक ही राज्य (Rhode Island) में हुए थे। इसलिए, ये कॉलम कोई उपयोगी जानकारी नहीं रखते और इन्हें हटाया जा सकता है। प्रत्येक कॉलम में missing values की संख्या आपके लिए कंसोल पर प्रिंट की गई है।.shapeकी जाँच करें ताकि पंक्तियों और कॉलमों की संख्या पता चल सके।.drop()मेथड में कॉलम नामों की सूची पास करकेcounty_nameऔरstate, दोनों कॉलमों को ड्रॉप करें।.shapeजाँचें ताकि पुष्टि हो सके कि अब दो कॉलम कम हैं।जब आप ऊपर का कोड चलाते हैं, तो यह निम्नलिखित परिणाम देता है:
खुद आज़माएँ।
pandas में कॉलम ड्रॉप करने के बारे में अधिक जानने के लिए, हमारे इस कोर्स Introduction to Data Visualization with ggplot2 का यह वीडियो देखें।
यह सामग्री DataCamp के Introduction to Data Visualization with ggplot2 कोर्स (लेखक: Kevin Markham) से ली गई है।
हमारा Pandas Add Column Tutorial भी देखें।