कभी-कभी डेटा विश्लेषण में एक स्ट्रिंग को एक संख्या (int/float) में बदलने की आवश्यकता होती है। प्रत्येक स्ट्रिंग के लिए, हम स्ट्रिंग मानों में अंतर करने के लिए एक अद्वितीय पूर्णांक मान निर्दिष्ट कर सकते हैं।
इसके लिए हम डेटा को कॉमा सेपरेटेड वैल्यू (सीएसवी) फाइलों में इस्तेमाल करते हैं। मान लें कि हमारे पास एक एक्सेल फ़ाइल है जिसमें सीएसवी डेटा है -
कंपनी | उद्योग | सिफारिश |
---|---|---|
एचडीएफसी बैंक | वित्त | पकड़ो |
अपोलो | स्वास्थ्य देखभाल | खरीदें |
हीरो | ऑटोमोबाइल | खराब प्रदर्शन |
यस बैंक | वित्त | पकड़ो |
एम एंड एम | ऑटोमोबाइल | खराब प्रदर्शन |
फोर्टिस | स्वास्थ्य देखभाल | खरीदें |
मारुति | ऑटोमोबाइल | खराब प्रदर्शन |
ऊपर एक बड़े डेटासेट से कुछ पंक्तियाँ हैं, हमें अलग-अलग अनुशंसाएँ देने की आवश्यकता है। खरीदें, होल्ड करें, अंडरपरफॉर्म करें आदि पूर्णांक मान, जो हमारे मेटाडेटा से लिंक होंगे। तो उपरोक्त इनपुट के लिए, हमारा अपेक्षित आउटपुट कुछ इस तरह होगा -
कंपनी | उद्योग | सिफारिश |
---|---|---|
एचडीएफसी बैंक | वित्त | 2 |
अपोलो | स्वास्थ्य देखभाल | 1 |
हीरो | ऑटोमोबाइल | 3 |
यस बैंक | वित्त | 2 |
एम एंड एम | ऑटोमोबाइल | 3 |
फोर्टिस | स्वास्थ्य देखभाल | 1 |
मारुति | ऑटोमोबाइल | 3 |
हमारे स्ट्रिंग (स्तंभ मान) को पूर्णांक में बदलने का एक तरीका यहां दिया गया है।
कोड 1
#Import required library import pandas as pd #Import the CSV file into Python using read_csv() from pandas dataframe = pd.read_csv("data_pandas1.csv") #Create the dictionary of key-value pair, where key is #your old value(string) and value is your new value(integer). Recommendation = {'Buy': 1, 'Hold': 2, 'Underperform': 3} #Assign these different key-value pair from above dictiionary to your table dataframe.Recommendation = [Recommendation[item] for item in dataframe.Recommendation] #New table print(dataframe)
परिणाम
Company Industry Recommendation 0 HDFC Bank Finance 2 1 Apollo Healthcare 1 2 Hero Automobile 3 3 Yes Bank Finance 2 4 M&M Automobile 3 5 Fortis Healthcare 1 6 Maruti Automobile 3
उपरोक्त कोड लिखने का एक और तरीका है, जहां हम एक शब्दकोश के साथ सौदा नहीं करते हैं, इसके बजाय हम सीधे कॉलम फ़ील्ड (यहां अनुशंसाएं) के लिए एक और मान निर्दिष्ट करते हैं यदि स्थिति मेल खाती है।
#Import required library import pandas as pd #Import the CSV file into Python using read_csv() from pandas dataf = pd.read_csv("data_pandas1.csv") #Directly assigning individual fields of Recommendation column different integer value #if condition matches .i.e.In the dataframe, recommendation columns we have "Buy" we'll assign # integer 1 to it. dataf.Recommendation[data.Recommendation =='Buy'] =1 dataf.Recommendation[data.Recommendation =='Hold'] =2 dataf.Recommendation[data.Recommendation =='Underperform'] =3 print(dataf)
परिणाम
Company Industry Recommendation 0 HDFC Bank Finance 2 1 Apollo Healthcare 1 2 Hero Automobile 3 3 Yes Bank Finance 2 4 M&M Automobile 3 5 Fortis Healthcare 1 6 Maruti Automobile 3
ऊपर मैंने आपकी तालिका (सीएसवी प्रारूप फ़ाइल) में स्ट्रिंग डेटा को पूर्णांक मान में बदलने के एकमात्र तरीके का उल्लेख किया है और ऐसे कई उदाहरण सामने आते हैं जब आपको अपने डेटा फ़ील्ड को स्ट्रिंग से पूर्णांक में बदलने की समान आवश्यकता होती है।पी>