पायथन पंडों - IO उपकरण

Pandas I/O API शीर्ष स्तरीय रीडर फ़ंक्शन का एक सेट है, जिसे एक्सेस किया जाता है pd.read_csv() कि आम तौर पर एक पंडों वस्तु लौटाते हैं।

पाठ फ़ाइलों (या फ्लैट फ़ाइलों) को पढ़ने के लिए दो वर्कहॉर्स कार्य हैं read_csv() तथा read_table()। वे दोनों एक ही पार्सिंग कोड का उपयोग बुद्धिमानी से सारणीबद्ध डेटा को एक में बदलने के लिए करते हैंDataFrame वस्तु -

pandas.read_csv(filepath_or_buffer, sep=',', delimiter=None, header='infer',
names=None, index_col=None, usecols=None
pandas.read_csv(filepath_or_buffer, sep='\t', delimiter=None, header='infer',
names=None, index_col=None, usecols=None

यहाँ है कैसे csv फ़ाइल डेटा जैसा दिखता है -

S.No,Name,Age,City,Salary
1,Tom,28,Toronto,20000
2,Lee,32,HongKong,3000
3,Steven,43,Bay Area,8300
4,Ram,38,Hyderabad,3900

इस डेटा को इस रूप में सहेजें temp.csv और उस पर संचालन का संचालन करें।

S.No,Name,Age,City,Salary
1,Tom,28,Toronto,20000
2,Lee,32,HongKong,3000
3,Steven,43,Bay Area,8300
4,Ram,38,Hyderabad,3900

इस डेटा को इस रूप में सहेजें temp.csv और उस पर संचालन का संचालन करें।

read.csv

read.csv सीएसवी फ़ाइलों से डेटा पढ़ता है और एक डेटाफ्रेम ऑब्जेक्ट बनाता है।

import pandas as pd

df=pd.read_csv("temp.csv")
print df

आईटी इस output इस प्रकार है -

S.No     Name   Age       City   Salary
0     1      Tom    28    Toronto    20000
1     2      Lee    32   HongKong     3000
2     3   Steven    43   Bay Area     8300
3     4      Ram    38  Hyderabad     3900

कस्टम सूचकांक

यह अनुक्रमणिका का उपयोग करने के लिए सीएसवी फ़ाइल में एक कॉलम निर्दिष्ट करता है index_col.

import pandas as pd

df=pd.read_csv("temp.csv",index_col=['S.No'])
print df

आईटी इस output इस प्रकार है -

S.No   Name   Age       City   Salary
1       Tom    28    Toronto    20000
2       Lee    32   HongKong     3000
3    Steven    43   Bay Area     8300
4       Ram    38  Hyderabad     3900

कन्वर्टर्स

dtype स्तंभों को एक तानाशाही के रूप में पारित किया जा सकता है।

import pandas as pd

df = pd.read_csv("temp.csv", dtype={'Salary': np.float64})
print df.dtypes

आईटी इस output इस प्रकार है -

S.No       int64
Name      object
Age        int64
City      object
Salary   float64
dtype: object

डिफ़ॉल्ट रूप से, dtype वेतन का कॉलम है int, लेकिन परिणाम इसे दिखाता है float क्योंकि हमने स्पष्ट रूप से टाइप किया है।

इस प्रकार, डेटा फ्लोट की तरह दिखता है -

S.No   Name   Age      City    Salary
0   1     Tom   28    Toronto   20000.0
1   2     Lee   32   HongKong    3000.0
2   3  Steven   43   Bay Area    8300.0
3   4     Ram   38  Hyderabad    3900.0

header_names

नाम तर्क का उपयोग करके हेडर के नाम निर्दिष्ट करें।

import pandas as pd
 
df=pd.read_csv("temp.csv", names=['a', 'b', 'c','d','e'])
print df

आईटी इस output इस प्रकार है -

a        b    c           d        e
0   S.No     Name   Age       City   Salary
1      1      Tom   28     Toronto    20000
2      2      Lee   32    HongKong     3000
3      3   Steven   43    Bay Area     8300
4      4      Ram   38   Hyderabad     3900

निरीक्षण करें, शीर्ष लेख नामों को कस्टम नामों के साथ जोड़ा गया है, लेकिन फ़ाइल में शीर्ष लेख को समाप्त नहीं किया गया है। अब, हम उस निकालने के लिए शीर्ष लेख तर्क का उपयोग करते हैं।

यदि शीर्ष लेख पहले के अलावा किसी पंक्ति में है, तो पंक्ति संख्या को शीर्ष लेख में पास करें। यह पूर्ववर्ती पंक्तियों को छोड़ देगा।

import pandas as pd 

df=pd.read_csv("temp.csv",names=['a','b','c','d','e'],header=0)
print df

आईटी इस output इस प्रकार है -

a        b    c           d        e
0  S.No     Name   Age       City   Salary
1     1      Tom   28     Toronto    20000
2     2      Lee   32    HongKong     3000
3     3   Steven   43    Bay Area     8300
4     4      Ram   38   Hyderabad     3900

skiprows

छोड़ दिया निर्दिष्ट पंक्तियों की संख्या को छोड़ देता है।

import pandas as pd

df=pd.read_csv("temp.csv", skiprows=2)
print df

आईटी इस output इस प्रकार है -

2      Lee   32    HongKong   3000
0   3   Steven   43    Bay Area   8300
1   4      Ram   38   Hyderabad   3900