1. 程式人生 > >Python pandas.read_csv()函式

Python pandas.read_csv()函式

   1、首先,介紹csv格式的檔案:

             CSV檔案是一個純文字檔案,最早用在簡單的資料庫裡,其格式簡單,具備很強的開放性,非常容易被匯入各種PC表格及資料庫,比如Excel表格等。

             CSV檔案中每行相當於一條記錄(相當於資料表中的一行),用 “,”(半形逗號)分割每行的不同欄位。舉例如下:

             例:

                      1, 23, 32,12

                      2, 44, 12, 56

             對應Excel表格,CSV檔案中的一行對應Excel的一行,CSV同一行中的半形逗號相當於Excel表格同一行分割不同單元格的豎線。

   2、介紹pandas.read_csv()函式。

         官方呼叫形式介紹:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html

 pandas.read_csv(filepath_or_buffersep=''delimiter=Noneheader='infer'names=Noneindex_col=Noneusecols=Nonesqueeze=Falseprefix=Nonemangle_dupe_cols=Truedtype=None

engine=Noneconverters=Nonetrue_values=Nonefalse_values=Noneskipinitialspace=Falseskiprows=Nonenrows=Nonena_values=Nonekeep_default_na=Truena_filter=Trueverbose=Falseskip_blank_lines=Trueparse_dates=Falseinfer_datetime_format=Falsekeep_date_col=Falsedate_parser=Nonedayfirst=False
iterator=Falsechunksize=Nonecompression='infer'thousands=Nonedecimal=b'.'lineterminator=Nonequotechar='"'quoting=0escapechar=Nonecomment=Noneencoding=Nonedialect=Nonetupleize_cols=Falseerror_bad_lines=Truewarn_bad_lines=Trueskipfooter=0skip_footer=0doublequote=Truedelim_whitespace=Falseas_recarray=Falsecompact_ints=Falseuse_unsigned=Falselow_memory=Truebuffer_lines=Nonememory_map=Falsefloat_precision=None)

     引數:

filepath_or_bufferstr,pathlib。str, pathlib.Path, py._path.local.LocalPath or any object with a read() method (such as a file handle or StringIO)

         檔案路徑或資料快取地址。

sep:str, default ‘,’

         指定分隔符。如果不指定引數,預設使用逗號分隔。如果分隔符長於一個字元並且不是‘\s+’,將使用python的語法分析器,並忽略資料中的逗號。正則表示式例子:'\r\t'。

delimiter str, default None

         定界符,備選分隔符(如果指定該引數,則sep引數失效)。

headerint or list of ints, default ‘infer’

          指定行數用來作為列名,資料開始行數。如果檔案中沒有列名,則預設為0,否則設定為None。如果明確設定header=0 就會替換掉原來存在列名。header引數可以是一個list例如:[0,1,3],這個list表示將檔案中的這些行作為列標題(意味著每一列有多個標題),介於中間的行將被忽略掉(例如本例中的2;本例中的資料1,2,4行將被作為多級標題出現,第3行資料將被丟棄,dataframe的資料從第5行開始。)。注意:如果skip_blank_lines=True 那麼header引數忽略註釋行和空行,所以header=0表示第一行資料而不是檔案的第一行。

      names : array-like, default None 用於結果的列名列表,如果資料檔案中沒有列標題行,就需要執行header=None。預設列表中不能出現重複,除非設定引數mangle_dupe_cols=True。       index_col : int or sequence or False, default None  用作行索引的列編號或者列名,如果給定一個序列則有多個行索引。       如果檔案不規則,行尾有分隔符,則可以設定index_col=False 來是的pandas不適用第一列作為行索引。        usecols : array-like, default None 返回一個數據子集,該列表中的值必須可以對應到檔案中的位置(數字可以對應到指定的列)或者是字元傳為檔案中的列名。例如:usecols有效引數可能是 [0,1,2]或者是 [‘foo’, ‘bar’, ‘baz’]。使用這個引數可以加快載入速度並降低記憶體消耗。 舉例如下:         import pandas as pd
         header = ['user_id', 'item_id', 'rating', 'timestamp']
         df = pd.read_csv("D:/u.data",sep = '\t',names = header)
參考連結:http://blog.csdn.net/u013066730/article/details/58634061