最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

pandas read_excel()和to_excel()函數(shù)解析

 更新時(shí)間:2019年09月19日 15:37:56   作者:君子胡云  
這篇文章主要介紹了pandas read_excel()和to_excel()函數(shù)解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

前言

數(shù)據(jù)分析時(shí)候,需要將數(shù)據(jù)進(jìn)行加載和存儲(chǔ),本文主要介紹和excel的交互。

read_excel()

加載函數(shù)為read_excel(),其具體參數(shù)如下。

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ù)解析:

  • io : string, path object ; excel 路徑。
  • sheetname : string, int, mixed list of strings/ints, or None, default 0 返回多表使用sheetname=[0,1],若sheetname=None是返回全表 注意:int/string 返回的是dataframe,而none和list返回的是dict of dataframe
  • header : int, list of ints, default 0 指定列名行,默認(rèn)0,即取第一行,數(shù)據(jù)為列名行以下的數(shù)據(jù) 若數(shù)據(jù)不含列名,則設(shè)定 header = None
  • skiprows : list-like,Rows to skip at the beginning,省略指定行數(shù)的數(shù)據(jù)
  • skip_footer : int,default 0, 省略從尾部數(shù)的int行數(shù)據(jù)
  • index_col : int, list of ints, default None指定列為索引列,也可以使用u”strings”
  • names : array-like, default None, 指定列的名字。

數(shù)據(jù)源:

sheet1:
ID NUM-1  NUM-2  NUM-3
36901  142 168 661
36902  78 521 602
36903  144 600 521
36904  95 457 468
36905  69 596 695

sheet2:
ID NUM-1  NUM-2  NUM-3
36906  190 527 691
36907  101 403 470

(1)函數(shù)原型

basestation ="F://pythonBook_PyPDAM/data/test.xls"
data = pd.read_excel(basestation)
print data

輸出:是一個(gè)dataframe

   ID NUM-1 NUM-2 NUM-3
0 36901  142  168  661
1 36902   78  521  602
2 36903  144  600  521
3 36904   95  457  468
4 36905   69  596  695

(2) sheetname參數(shù):返回多表使用sheetname=[0,1],若sheetname=None是返回全表 注意:int/string 返回的是dataframe,而none和list返回的是dict of dataframe

data_1 = pd.read_excel(basestation,sheetname=[0,1])
print data_1
print type(data_1)

輸出:dict of dataframe

OrderedDict([(0,    ID NUM-1 NUM-2 NUM-3
0 36901  142  168  661
1 36902   78  521  602
2 36903  144  600  521
3 36904   95  457  468
4 36905   69  596  695), 
(1,    ID NUM-1 NUM-2 NUM-3
0 36906  190  527  691
1 36907  101  403  470)])

(3)header參數(shù):指定列名行,默認(rèn)0,即取第一行,數(shù)據(jù)為列名行以下的數(shù)據(jù) 若數(shù)據(jù)不含列名,則設(shè)定 header = None ,注意這里還有列名的一行。

data = pd.read_excel(basestation,header=None)
print data
輸出:
    0   1   2   3
0   ID NUM-1 NUM-2 NUM-3
1 36901  142  168  661
2 36902   78  521  602
3 36903  144  600  521
4 36904   95  457  468
5 36905   69  596  695

data = pd.read_excel(basestation,header=[3])
print data
輸出:
  36903 144  600  521 
0 36904   95  457  468
1 36905   69  596  695

(4) skiprows 參數(shù):省略指定行數(shù)的數(shù)據(jù)

data = pd.read_excel(basestation,skiprows = [1])
print data
輸出:
   ID NUM-1 NUM-2 NUM-3
0 36902   78  521  602
1 36903  144  600  521
2 36904   95  457  468
3 36905   69  596  695

(5)skip_footer參數(shù):省略從尾部數(shù)的int行的數(shù)據(jù)

data = pd.read_excel(basestation, skip_footer=3)
print data
輸出:
   ID NUM-1 NUM-2 NUM-3
0 36901  142  168  661
1 36902   78  521  602

(6)index_col參數(shù):指定列為索引列,也可以使用u”strings”

data = pd.read_excel(basestation, index_col="NUM-3")
print data
輸出:
     ID NUM-1 NUM-2
NUM-3           
661  36901  142  168
602  36902   78  521
521  36903  144  600
468  36904   95  457
695  36905   69  596

(7)names參數(shù): 指定列的名字。

data = pd.read_excel(basestation,names=["a","b","c","e"])
print data
    a  b  c  e
0 36901 142 168 661
1 36902  78 521 602
2 36903 144 600 521
3 36904  95 457 468
4 36905  69 596 695

具體參數(shù)如下:

>>> print help(pandas.read_excel)
Help on function read_excel in module pandas.io.excel:

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)
  Read an Excel table into a pandas DataFrame

  Parameters
  ----------
  io : string, path object (pathlib.Path or py._path.local.LocalPath),
    file-like object, pandas ExcelFile, or xlrd workbook.
    The string could be a URL. Valid URL schemes include http, ftp, s3,
    and file. For file URLs, a host is expected. For instance, a local
    file could be file://localhost/path/to/workbook.xlsx
  sheetname : string, int, mixed list of strings/ints, or None, default 0

    Strings are used for sheet names, Integers are used in zero-indexed
    sheet positions.

    Lists of strings/integers are used to request multiple sheets.

    Specify None to get all sheets.

    str|int -> DataFrame is returned.
    list|None -> Dict of DataFrames is returned, with keys representing
    sheets.

    Available Cases

    * Defaults to 0 -> 1st sheet as a DataFrame
    * 1 -> 2nd sheet as a DataFrame
    * "Sheet1" -> 1st sheet as a DataFrame
    * [0,1,"Sheet5"] -> 1st, 2nd & 5th sheet as a dictionary of DataFrames
    * None -> All sheets as a dictionary of DataFrames

  header : int, list of ints, default 0
    Row (0-indexed) to use for the column labels of the parsed
    DataFrame. If a list of integers is passed those row positions will
    be combined into a ``MultiIndex``
  skiprows : list-like
    Rows to skip at the beginning (0-indexed)
  skip_footer : int, default 0
    Rows at the end to skip (0-indexed)
  index_col : int, list of ints, default None
    Column (0-indexed) to use as the row labels of the DataFrame.
    Pass None if there is no such column. If a list is passed,
    those columns will be combined into a ``MultiIndex``. If a
    subset of data is selected with ``parse_cols``, index_col
    is based on the subset.
  names : array-like, default None
    List of column names to use. If file contains no header row,
    then you should explicitly pass header=None
  converters : dict, default None
    Dict of functions for converting values in certain columns. Keys can
    either be integers or column labels, values are functions that take one
    input argument, the Excel cell content, and return the transformed
    content.
  dtype : Type name or dict of column -> type, default None
    Data type for data or columns. E.g. {'a': np.float64, 'b': np.int32}
    Use `object` to preserve data as stored in Excel and not interpret dtype.
    If converters are specified, they will be applied INSTEAD
    of dtype conversion.

    .. versionadded:: 0.20.0

  true_values : list, default None
    Values to consider as True

    .. versionadded:: 0.19.0

  false_values : list, default None
    Values to consider as False

    .. versionadded:: 0.19.0

  parse_cols : int or list, default None
    * If None then parse all columns,
    * If int then indicates last column to be parsed
    * If list of ints then indicates list of column numbers to be parsed
    * If string then indicates comma separated list of Excel column letters and
     column ranges (e.g. "A:E" or "A,C,E:F"). Ranges are inclusive of
     both sides.
  squeeze : boolean, default False
    If the parsed data only contains one column then return a Series
  na_values : scalar, str, list-like, or dict, default None
    Additional strings to recognize as NA/NaN. If dict passed, specific
    per-column NA values. By default the following values are interpreted
    as NaN: '', '#N/A', '#N/A N/A', '#NA', '-1.#IND', '-1.#QNAN', '-NaN', '-nan',
  '1.#IND', '1.#QNAN', 'N/A', 'NA', 'NULL', 'NaN', 'nan'.
  thousands : str, default None
    Thousands separator for parsing string columns to numeric. Note that
    this parameter is only necessary for columns stored as TEXT in Excel,
    any numeric columns will automatically be parsed, regardless of display
    format.
  keep_default_na : bool, default True
    If na_values are specified and keep_default_na is False the default NaN
    values are overridden, otherwise they're appended to.
  verbose : boolean, default False
    Indicate number of NA values placed in non-numeric columns
  engine: string, default None
    If io is not a buffer or path, this must be set to identify io.
    Acceptable values are None or xlrd
  convert_float : boolean, default True
    convert integral floats to int (i.e., 1.0 --> 1). If False, all numeric
    data will be read in as floats: Excel stores all numbers as floats
    internally
  has_index_names : boolean, default None
    DEPRECATED: for version 0.17+ index names will be automatically
    inferred based on index_col. To read Excel output from 0.16.2 and
    prior that had saved index names, use True.

  Returns

to_excel()

存儲(chǔ)函數(shù)為pd.DataFrame.to_excel(),注意,必須是DataFrame寫(xiě)入excel, 即Write DataFrame to an excel sheet。其具體參數(shù)如下:

to_excel(self, excel_writer, sheet_name='Sheet1', na_rep='', float_format=None,columns=None, header=True, index=True, index_label=None,startrow=0, startcol=0, engine=None, merge_cells=True, encoding=None,
inf_rep='inf', verbose=True, freeze_panes=None)

常用參數(shù)解析

  • - excel_writer : string or ExcelWriter object File path or existing ExcelWriter目標(biāo)路徑
  • - sheet_name : string, default ‘Sheet1' Name of sheet which will contain DataFrame,填充excel的第幾頁(yè)
  • - na_rep : string, default ”,Missing data representation 缺失值填充
  • - float_format : string, default None Format string for floating point numbers
  • - columns : sequence, optional,Columns to write 選擇輸出的的列。
  • - header : boolean or list of string, default True Write out column names. If a list of string is given it is assumed to be aliases for the column names
  • - index : boolean, default True,Write row names (index)
  • - index_label : string or sequence, default None, Column label for index column(s) if desired. If None is given, andheader and index are True, then the index names are used. A sequence should be given if the DataFrame uses MultiIndex.
  • - startrow :upper left cell row to dump data frame
  • - startcol :upper left cell column to dump data frame
  • - engine : string, default None ,write engine to use - you can also set this via the options,io.excel.xlsx.writer, io.excel.xls.writer, andio.excel.xlsm.writer.
  • - merge_cells : boolean, default True Write MultiIndex and Hierarchical Rows as merged cells.
  • - encoding: string, default None encoding of the resulting excel file. Only necessary for xlwt,other writers support unicode natively.
  • - inf_rep : string, default ‘inf' Representation for infinity (there is no native representation for infinity in Excel)
  • - freeze_panes : tuple of integer (length 2), default None Specifies the one-based bottommost row and rightmost column that is to be frozen

數(shù)據(jù)源:

  ID NUM-1  NUM-2  NUM-3
0  36901  142 168 661
1  36902  78 521 602
2  36903  144 600 521
3  36904  95 457 468
4  36905  69 596 695
5  36906  165 453 

加載數(shù)據(jù):
basestation ="F://python/data/test.xls"
basestation_end ="F://python/data/test_end.xls"
data = pd.read_excel(basestation)

(1)參數(shù)excel_writer,輸出路徑。

data.to_excel(basestation_end)
輸出:
  ID NUM-1  NUM-2  NUM-3
0  36901  142 168 661
1  36902  78 521 602
2  36903  144 600 521
3  36904  95 457 468
4  36905  69 596 695
5  36906  165 453 

(2)sheet_name,將數(shù)據(jù)存儲(chǔ)在excel的那個(gè)sheet頁(yè)面。

data.to_excel(basestation_end,sheet_name="sheet2")

(3)na_rep,缺失值填充

data.to_excel(basestation_end,na_rep="NULL")
輸出:
  ID NUM-1  NUM-2  NUM-3
0  36901  142 168 661
1  36902  78 521 602
2  36903  144 600 521
3  36904  95 457 468
4  36905  69 596 695
5  36906  165 453 NULL

(4) colums參數(shù): sequence, optional,Columns to write 選擇輸出的的列。

data.to_excel(basestation_end,columns=["ID"])
輸出
  ID
0  36901
1  36902
2  36903
3  36904
4  36905
5  36906

(5)header 參數(shù): boolean or list of string,默認(rèn)為T(mén)rue,可以用list命名列的名字。header = False 則不輸出題頭。

data.to_excel(basestation_end,header=["a","b","c","d"])
輸出:
  a  b  c  d
0  36901  142 168 661
1  36902  78 521 602
2  36903  144 600 521
3  36904  95 457 468
4  36905  69 596 695
5  36906  165 453 


data.to_excel(basestation_end,header=False,columns=["ID"])
header = False 則不輸出題頭
輸出:
0  36901
1  36902
2  36903
3  36904
4  36905
5  36906

(6)index : boolean, default True Write row names (index)

默認(rèn)為T(mén)rue,顯示index,當(dāng)index=False 則不顯示行索引(名字)。

index_label : string or sequence, default None

設(shè)置索引列的列名。

data.to_excel(basestation_end,index=False)
輸出:
ID NUM-1  NUM-2  NUM-3
36901  142 168 661
36902  78 521 602
36903  144 600 521
36904  95 457 468
36905  69 596 695
36906  165 453 

data.to_excel(basestation_end,index_label=["f"])
輸出:
f  ID NUM-1  NUM-2  NUM-3
0  36901  142 168 661
1  36902  78 521 602
2  36903  144 600 521
3  36904  95 457 468
4  36905  69 596 695
5  36906  165 453 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python制作當(dāng)年第一款手機(jī)游戲-貪吃蛇游戲(練習(xí))

    Python制作當(dāng)年第一款手機(jī)游戲-貪吃蛇游戲(練習(xí))

    這篇文章主要介紹了Python制作當(dāng)年第一款手機(jī)游戲-貪吃蛇游戲,文章利用Python?pygame做一個(gè)貪吃蛇的小游戲而且講清楚每一段代碼是用來(lái)干嘛的,需要的朋友可以參考一下
    2022-01-01
  • Python漢字轉(zhuǎn)拼音pypinyin庫(kù)、輸出excel的xlwt庫(kù)

    Python漢字轉(zhuǎn)拼音pypinyin庫(kù)、輸出excel的xlwt庫(kù)

    本文介紹了如何使用Python的pypinyin庫(kù)和xlwt庫(kù),將漢字文本轉(zhuǎn)換為帶有拼音標(biāo)注的Excel文件,通過(guò)讀取文本、獲取拼音并寫(xiě)入Excel,實(shí)現(xiàn)了漢字和拼音的一一對(duì)應(yīng),同時(shí),文章也指出了潛在的問(wèn)題
    2025-04-04
  • Python pytest裝飾器總結(jié)(實(shí)例詳解)

    Python pytest裝飾器總結(jié)(實(shí)例詳解)

    這篇文章主要介紹了Python pytest裝飾器總結(jié),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • Python上下文管理器詳細(xì)使用教程

    Python上下文管理器詳細(xì)使用教程

    Python有三大神器,一個(gè)是裝飾器,一個(gè)是迭代器、生成器,最后一個(gè)就是今天文章的主角 -- 「上下文管理器」。上下文管理器在日常開(kāi)發(fā)中的作用是非常大的,可能有些人用到了也沒(méi)有意識(shí)到這一點(diǎn)
    2023-02-02
  • python開(kāi)發(fā)之基于thread線程搜索本地文件的方法

    python開(kāi)發(fā)之基于thread線程搜索本地文件的方法

    這篇文章主要介紹了python開(kāi)發(fā)之基于thread線程搜索本地文件的方法,以完整實(shí)例形式分析了Python基于多線程處理搜索問(wèn)題的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2015-11-11
  • python 寫(xiě)一個(gè)水果忍者游戲

    python 寫(xiě)一個(gè)水果忍者游戲

    這篇文章主要介紹了python 如何寫(xiě)一個(gè)水果忍者游戲,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01
  • 封裝Detours用于Python中x64函數(shù)hook詳解

    封裝Detours用于Python中x64函數(shù)hook詳解

    Detours是微軟發(fā)布的一個(gè)API hook框架,同時(shí)支持x86和x64,看文檔說(shuō)也支持ARM和ARM64的Windows,這篇文章主要介紹了封裝Detours用于Python中x64函數(shù)hook,需要的朋友可以參考下
    2023-12-12
  • 變長(zhǎng)雙向rnn的正確使用姿勢(shì)教學(xué)

    變長(zhǎng)雙向rnn的正確使用姿勢(shì)教學(xué)

    這篇文章主要介紹了變長(zhǎng)雙向rnn的正確使用姿勢(shì),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • django model 條件過(guò)濾 queryset.filter(**condtions)用法詳解

    django model 條件過(guò)濾 queryset.filter(**condtions)用法詳解

    這篇文章主要介紹了django model 條件過(guò)濾 queryset.filter(**condtions)用法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-05-05
  • 詳解Python+Matplotlib繪制面積圖&熱力圖

    詳解Python+Matplotlib繪制面積圖&熱力圖

    這篇文章主要介紹了如何利用Python+Matplotlib繪制面積圖喝熱力圖,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-04-04

最新評(píng)論

丰都县| 化德县| 梅河口市| 怀集县| 正蓝旗| 栖霞市| 辽宁省| 巴彦县| 壶关县| 滨州市| 康定县| 易门县| 吉水县| 开化县| 雷波县| 九江县| 淳安县| 凤山市| 杂多县| 新安县| 高邑县| 淳化县| 甘洛县| 金乡县| 平安县| 南汇区| 天水市| 陇川县| 清水县| 辽阳县| 丰原市| 南澳县| 霍山县| 肥城市| 赤壁市| 枣阳市| 阜宁县| 大荔县| 门源| 宜阳县| 广丰县|