पायथन - सीएसवी डेटा प्रसंस्करण
CSV से डेटा पढ़ना (अल्पविराम से अलग किए गए मान) डेटा साइंस में एक मूलभूत आवश्यकता है। अक्सर, हम विभिन्न स्रोतों से डेटा प्राप्त करते हैं जिन्हें सीएसवी प्रारूप में निर्यात किया जा सकता है ताकि उनका उपयोग अन्य प्रणालियों द्वारा किया जा सके। पनादास लाइब्रेरी ऐसी सुविधाएँ प्रदान करती है जिनके उपयोग से हम केवल कॉलम और पंक्तियों के चयनित समूह के लिए CSV फ़ाइल को पूर्ण और साथ ही भागों में पढ़ सकते हैं।
CSV फ़ाइल के रूप में इनपुट
सीएसवी फाइल एक टेक्स्ट फाइल है जिसमें कॉलम के मान कॉमा द्वारा अलग किए जाते हैं। आइए नाम की फ़ाइल में मौजूद निम्न आंकड़ों पर विचार करेंinput.csv।
आप इस डेटा को कॉपी और पेस्ट करके विंडोज नोटपैड का उपयोग करके इस फाइल को बना सकते हैं। फ़ाइल को इस रूप में सहेजेंinput.csv नोटपैड में Save As All files (*। *) ऑप्शन का उपयोग करें।
id,name,salary,start_date,dept
1,Rick,623.3,2012-01-01,IT
2,Dan,515.2,2013-09-23,Operations
3,Tusar,611,2014-11-15,IT
4,Ryan,729,2014-05-11,HR
5,Gary,843.25,2015-03-27,Finance
6,Rasmi,578,2013-05-21,IT
7,Pranab,632.8,2013-07-30,Operations
8,Guru,722.5,2014-06-17,Finance
एक CSV फ़ाइल पढ़ना
read_csvपांडा लाइब्रेरी के फ़ंक्शन का उपयोग पंडों के वातावरण में एक CSV फ़ाइल की सामग्री को पंडों के डेटाफ़्रेम के रूप में पढ़ने के लिए किया जाता है। फ़ंक्शन फ़ाइल के लिए उचित पथ का उपयोग करके ओएस से फ़ाइलों को पढ़ सकता है।
import pandas as pd
data = pd.read_csv('path/input.csv')
print (data)
जब हम उपरोक्त कोड निष्पादित करते हैं, तो यह निम्नलिखित परिणाम उत्पन्न करता है। कृपया ध्यान दें कि फ़ंक्शन द्वारा इंडेक्स के रूप में शून्य से शुरू होने वाला एक अतिरिक्त कॉलम कैसे बनाया गया है।
id name salary start_date dept
0 1 Rick 623.30 2012-01-01 IT
1 2 Dan 515.20 2013-09-23 Operations
2 3 Tusar 611.00 2014-11-15 IT
3 4 Ryan 729.00 2014-05-11 HR
4 5 Gary 843.25 2015-03-27 Finance
5 6 Rasmi 578.00 2013-05-21 IT
6 7 Pranab 632.80 2013-07-30 Operations
7 8 Guru 722.50 2014-06-17 Finance
विशिष्ट पंक्तियाँ पढ़ना
read_csvपंडों के पुस्तकालय के फ़ंक्शन का उपयोग किसी दिए गए कॉलम के लिए कुछ विशिष्ट पंक्तियों को पढ़ने के लिए भी किया जा सकता है। हम वेतन नाम के कॉलम के लिए पहले 5 पंक्तियों के लिए नीचे दिखाए गए कोड का उपयोग करके read_csv फ़ंक्शन से परिणाम को स्लाइस करते हैं।
import pandas as pd
data = pd.read_csv('path/input.csv')
# Slice the result for first 5 rows
print (data[0:5]['salary'])
जब हम उपरोक्त कोड निष्पादित करते हैं, तो यह निम्नलिखित परिणाम उत्पन्न करता है।
0 623.30
1 515.20
2 611.00
3 729.00
4 843.25
Name: salary, dtype: float64
विशिष्ट कॉलम पढ़ना
read_csvपंडों के पुस्तकालय का कार्य कुछ विशिष्ट स्तंभों को पढ़ने के लिए भी किया जा सकता है। हम मल्टी-एक्सिस इंडेक्सिंग विधि का उपयोग करते हैं जिसे कहा जाता है.loc()इस काम के लिए। हम सभी पंक्तियों के लिए वेतन और नाम कॉलम प्रदर्शित करना चुनते हैं।
import pandas as pd
data = pd.read_csv('path/input.csv')
# Use the multi-axes indexing funtion
print (data.loc[:,['salary','name']])
जब हम उपरोक्त कोड निष्पादित करते हैं, तो यह निम्नलिखित परिणाम उत्पन्न करता है।
salary name
0 623.30 Rick
1 515.20 Dan
2 611.00 Tusar
3 729.00 Ryan
4 843.25 Gary
5 578.00 Rasmi
6 632.80 Pranab
7 722.50 Guru
विशिष्ट कॉलम और पंक्तियाँ पढ़ना
read_csvपंडों के पुस्तकालय का कार्य कुछ विशिष्ट स्तंभों और विशिष्ट पंक्तियों को पढ़ने के लिए भी किया जा सकता है। हम मल्टी-एक्सिस इंडेक्सिंग विधि का उपयोग करते हैं जिसे कहा जाता है.loc()इस काम के लिए। हम कुछ पंक्तियों के लिए वेतन और नाम कॉलम प्रदर्शित करते हैं।
import pandas as pd
data = pd.read_csv('path/input.csv')
# Use the multi-axes indexing funtion
print (data.loc[[1,3,5],['salary','name']])
जब हम उपरोक्त कोड निष्पादित करते हैं, तो यह निम्नलिखित परिणाम उत्पन्न करता है।
salary name
1 515.2 Dan
3 729.0 Ryan
5 578.0 Rasmi
पंक्तियों की एक श्रृंखला के लिए विशिष्ट कॉलम पढ़ना
read_csvपांडा लाइब्रेरी का कार्य कुछ विशिष्ट कॉलम और पंक्तियों की एक श्रृंखला को पढ़ने के लिए भी किया जा सकता है। हम मल्टी-एक्सिस इंडेक्सिंग विधि का उपयोग करते हैं जिसे कहा जाता है.loc()इस काम के लिए। हम कुछ पंक्तियों के लिए वेतन और नाम कॉलम प्रदर्शित करते हैं।
import pandas as pd
data = pd.read_csv('path/input.csv')
# Use the multi-axes indexing funtion
print (data.loc[2:6,['salary','name']])
जब हम उपरोक्त कोड निष्पादित करते हैं, तो यह निम्नलिखित परिणाम उत्पन्न करता है।
salary name
2 611.00 Tusar
3 729.00 Ryan
4 843.25 Gary
5 578.00 Rasmi
6 632.80 Pranab