App下載

pandas的文件讀取和保存

猿友 2021-01-06 15:06:18 瀏覽數(shù) (3573)
反饋

一、Excel 文件的讀取(read_excel)

pd.read_excel(io, sheetname=0, header=0, skiprows=None, skip_footer=0, index_col=None, names=None, parse_cols=None, parse_dates=False, date_parser=None, na_values=None, thousands=None, convert_float=True, has_index_names=None, converters=None, dtype=None, true_values=None, false_values=None, engine=None, squeeze=False, **kwds)

參數(shù)說(shuō)明:

  • io: 字符串,文件的路徑對(duì)象

  • sheetname:None、string、int、字符串列表或者是整數(shù)列表,default 為 0,字符串用于工作表名稱(chēng),整數(shù)用于零索引工作表位置,字符串列表或整數(shù)列表用于請(qǐng)求多個(gè)工作表,為 None 時(shí)獲取所有工作表。

在這里插入圖片描述

sheetname 值的描述
0 獲取sheet1表格
1 獲取sheet2表格
‘Sheet3’ 獲取sheet3表格
[0,1,‘Sheet5’] 獲取sheet1,sheet2和sheet5表格
  • header: 表示的是哪一行作為列索引,默認(rèn)是 0 (第一行), 當(dāng) header 不為第一行的時(shí)候,會(huì)將默認(rèn)為列索引之前的行全部刪除不讀,數(shù)據(jù)為列名行以下的數(shù)據(jù);若數(shù)據(jù)不含列名,則設(shè)定 header = None。

  • names:當(dāng)文件中沒(méi)有給出表頭的時(shí)候,需要將 header 設(shè)置為 None 值, 并且傳入與列相同數(shù)量的 list

    data = pd.read_excel(r'C:\w3cschool\learn\text\hello_w3cschool.xlsx',header=None,names=np.arange(19))
    print(data.head())
    
  • index_col:指定列為索引列,默認(rèn) None 列(0 索引)用作 DataFrame 的行標(biāo)簽。\

  • skiprows : 跳過(guò)指定行(包括)之前的行開(kāi)始讀取

    • 傳入的值從 1 開(kāi)始的任意 int 類(lèi)型,超出行的長(zhǎng)度不報(bào)錯(cuò),顯示為空,如下:
      Empty DataFrame
      Columns: []
      Index: []

    • 只剩最后一條數(shù)據(jù)時(shí),顯示如下:
      Empty DataFrame
      Columns: [4, peter, 18, man]
      Index: []
      nrows

    • 值為int類(lèi)型,默認(rèn)None,只取前n行數(shù)據(jù),按索引傳參

    • 傳入值為0時(shí),只取第一行,顯示如下:
      Empty DataFrame
      Columns: [1, jack, 22, man]
      Index: []

    • 傳入其余值時(shí),只顯示該值(包括)之前的行,超出行的長(zhǎng)度后不報(bào)錯(cuò),有多少行顯示多少行

二、讀取 csv 文件( read_csv )

注釋?zhuān)?csv 屬于文本文件,逗號(hào)分隔文件,編碼一般為 gbk;

參數(shù)說(shuō)明:

  1. sep: 元素之間分隔符,csv文件默認(rèn)分隔符為逗號(hào);
  2. engine: {‘c’, ‘python’},底層編譯的方式,默認(rèn)是c語(yǔ)言,如果遇到問(wèn)題,可以將 engine 改為 Python;
  3. encoding: 一般是gbk
  4. delimiter: str, default None, 定界符,備選分隔符(如果指定該參數(shù),則 sep 參數(shù)失效)

pd.read_table( r’path’,
sep=’,’,
encoding=‘gbk’,
engine=‘python’).head()

2021010521030718

三、文件的保存

(1)保存到 excel 文件: to_excel

參數(shù)說(shuō)明:

  • excel_writer: 字符串或 Excelwrite 對(duì)象,文件路徑或現(xiàn)有的 ExcelWriter
  • sheet_name: 字符串,默認(rèn)’Sheet1’
  • na_rep: 字符串,默認(rèn)’ ',缺失數(shù)據(jù)表示

df.to_excel(‘filename.xlsx’)

(2)保存到 csv 文件: to_csv

參數(shù)說(shuō)明:

  • path_or_buf: 默認(rèn)值為None,字符串或文件句柄,默認(rèn)無(wú)文件,路徑或?qū)ο?,如果沒(méi)有提供,結(jié)果將返回為字符串.
  • sep: 輸出文件的字段的分隔符,默認(rèn)為 ’,’
  • na_rep: 缺失數(shù)據(jù)表示,默認(rèn)為 ’ ’

,默認(rèn)無(wú)文件,路徑或?qū)ο?,如果沒(méi)有提供,結(jié)果將返回為字符串.

  • sep: 輸出文件的字段的分隔符,默認(rèn)為 ’,’
  • na_rep: 缺失數(shù)據(jù)表示,默認(rèn)為 ’ ’

0 人點(diǎn)贊