पाइथन में लॉजिस्टिक रिग्रेशन - रीस्ट्रक्चरिंग डेटा
जब भी कोई संगठन एक सर्वेक्षण आयोजित करता है, तो वे ग्राहक से यथासंभव अधिक से अधिक जानकारी एकत्र करने की कोशिश करते हैं, इस विचार के साथ कि यह जानकारी एक समय में एक या दूसरे तरीके से संगठन के लिए उपयोगी होगी। वर्तमान समस्या को हल करने के लिए, हमें उस जानकारी को चुनना होगा जो सीधे हमारी समस्या के लिए प्रासंगिक है।
सभी फ़ील्ड प्रदर्शित करना
अब, देखते हैं कि हमारे लिए उपयोगी डेटा फ़ील्ड का चयन कैसे करें। कोड संपादक में निम्न कथन चलाएँ।
In [6]: print(list(df.columns))
आप निम्न आउटपुट देखेंगे -
['age', 'job', 'marital', 'education', 'default', 'housing', 'loan',
'contact', 'month', 'day_of_week', 'duration', 'campaign', 'pdays',
'previous', 'poutcome', 'emp_var_rate', 'cons_price_idx', 'cons_conf_idx',
'euribor3m', 'nr_employed', 'y']
आउटपुट डेटाबेस के सभी कॉलम के नाम दिखाता है। अंतिम कॉलम "y" एक बूलियन मूल्य है जो यह दर्शाता है कि इस ग्राहक का बैंक में सावधि जमा है या नहीं। इस क्षेत्र के मूल्य या तो "y" या "n" हैं। आप प्रत्येक कॉलम के विवरण और उद्देश्य को बैंकों के नाम-पाठ फ़ाइल में पढ़ सकते हैं जिसे डेटा के भाग के रूप में डाउनलोड किया गया था।
अवांछित फील्ड को खत्म करना
स्तंभ नामों की जांच करने पर, आपको पता चल जाएगा कि कुछ क्षेत्रों में समस्या का कोई महत्व नहीं है। उदाहरण के लिए, फ़ील्ड जैसेmonth, day_of_week, अभियान, आदि हमारे किसी काम के नहीं हैं। हम अपने डेटाबेस से इन क्षेत्रों को समाप्त कर देंगे। एक कॉलम को छोड़ने के लिए, हम नीचे दिखाए गए अनुसार ड्रॉप कमांड का उपयोग करते हैं -
In [8]: #drop columns which are not needed.
df.drop(df.columns[[0, 3, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19]],
axis = 1, inplace = True)
कमांड कहता है कि ड्रॉप कॉलम नंबर 0, 3, 7, 8 और इसी तरह से। यह सुनिश्चित करने के लिए कि सूचकांक ठीक से चयनित है, निम्नलिखित कथन का उपयोग करें -
In [7]: df.columns[9]
Out[7]: 'day_of_week'
यह दिए गए इंडेक्स के कॉलम नाम को प्रिंट करता है।
जिन कॉलमों की आवश्यकता नहीं है, उन्हें छोड़ने के बाद, हेड स्टेटमेंट के साथ डेटा की जांच करें। स्क्रीन आउटपुट यहाँ दिखाया गया है -
In [9]: df.head()
Out[9]:
job marital default housing loan poutcome y
0 blue-collar married unknown yes no nonexistent 0
1 technician married no no no nonexistent 0
2 management single no yes no success 1
3 services married no no no nonexistent 0
4 retired married no yes no success 1
अब, हमारे पास केवल वे फ़ील्ड हैं जो हमें लगता है कि हमारे डेटा विश्लेषण और भविष्यवाणी के लिए महत्वपूर्ण हैं। की अहमियतData Scientistइस कदम पर तस्वीर में आता है। डेटा वैज्ञानिक को मॉडल निर्माण के लिए उपयुक्त कॉलम का चयन करना होगा।
उदाहरण के लिए, का प्रकार jobहालांकि पहली नज़र में डेटाबेस में शामिल करने के लिए हर किसी को मना नहीं किया जा सकता है, यह एक बहुत ही उपयोगी क्षेत्र होगा। सभी प्रकार के ग्राहक टीडी नहीं खोलेंगे। कम आय वाले लोग टीडीएस नहीं खोल सकते हैं, जबकि उच्च आय वाले लोग आमतौर पर अपने अतिरिक्त धन को टीडीएस में पार्क करेंगे। तो इस परिदृश्य में नौकरी का प्रकार काफी प्रासंगिक हो जाता है। इसी तरह, उन कॉलमों का ध्यानपूर्वक चयन करें जो आपको लगता है कि आपके विश्लेषण के लिए प्रासंगिक होगा।
अगले अध्याय में, हम मॉडल के निर्माण के लिए अपना डेटा तैयार करेंगे।