• pandas——read_excel()方法学习


    01 pandas——read_excel()方法学习

     

    def read_excel( io, sheet_name=0, header=0, names=None, index_col=None, usecols=None, squeeze=False, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skiprows=None, nrows=None, na_values=None, keep_default_na=True, verbose=False, parse_dates=False, date_parser=None, thousands=None, comment=None, skip_footer=0, skipfooter=0, convert_float=True, mangle_dupe_cols=True, **kwds ):

    In [2]:
    import pandas as pd
    import numpy as np
    import os
    
    In [3]:
    os.getcwd()  # 获取当前工作目录
    
    Out[3]:
    'C:\Users\zhao\PyCharmProjects\ttt'
    In [4]:
    file_path = "pandas/data/table.xlsx"
    data = pd.read_excel(file_path)
    data
    
    Out[4]:
     
     SchoolClassIDGenderAddressHeightWeightMathPhysics
    0 S_1 C_1 1101 M street_1 173 63 34.0 A+
    1 S_1 C_1 1102 F street_2 192 73 32.5 B+
    2 S_1 C_1 1103 M street_2 186 82 87.2 B+
    3 S_1 C_1 1104 F street_2 167 81 80.4 B-
    4 S_1 C_1 1105 F street_4 159 64 84.8 B+
    5 S_1 C_2 1201 M street_5 188 68 97.0 A-
    6 S_1 C_2 1202 F street_4 176 94 63.5 B-
    7 S_1 C_2 1203 M street_6 160 53 58.8 A+
    8 S_1 C_2 1204 F street_5 162 63 33.8 B
    9 S_1 C_2 1205 F street_6 167 63 68.4 B-
    10 S_1 C_3 1301 M street_4 161 68 31.5 B+
    11 S_1 C_3 1302 F street_1 175 57 87.7 A-
    12 S_1 C_3 1303 M street_7 188 82 49.7 B
    13 S_1 C_3 1304 M street_2 195 70 85.2 A
    14 S_1 C_3 1305 F street_5 187 69 61.7 B-
    15 S_2 C_1 2101 M street_7 174 84 83.3 C
    16 S_2 C_1 2102 F street_6 161 61 50.6 B+
    17 S_2 C_1 2103 M street_4 157 61 52.5 B-
    18 S_2 C_1 2104 F street_5 159 97 72.2 B+
    19 S_2 C_1 2105 M street_4 170 81 34.2 A
    20 S_2 C_2 2201 M street_5 193 100 39.1 B
    21 S_2 C_2 2202 F street_7 194 77 68.5 B+
    22 S_2 C_2 2203 M street_4 155 91 73.8 A+
    23 S_2 C_2 2204 M street_1 175 74 47.2 B-
    24 S_2 C_2 2205 F street_7 183 76 85.4 B
    25 S_2 C_3 2301 F street_4 157 78 72.3 B+
    26 S_2 C_3 2302 M street_5 171 88 32.7 A
    27 S_2 C_3 2303 F street_7 190 99 65.9 C
    28 S_2 C_3 2304 F street_6 164 81 95.5 A-
    29 S_2 C_3 2305 M street_4 187 73 48.9 B
    30 S_2 C_4 2401 F street_2 192 62 45.3 A
    31 S_2 C_4 2402 M street_7 166 82 48.7 B
    32 S_2 C_4 2403 F street_6 158 60 59.7 B+
    33 S_2 C_4 2404 F street_2 160 84 67.7 B
    34 S_2 C_4 2405 F street_6 193 54 47.6 B
     

    1.sheetname : 可以是str,int,list,或None,默认0,字符是表示的是该表的名字,数字表示的是表的位置(从0开始),数字和字符是请求单个表格;列表形式的是请求多个表格.赋值为None是请求全部的表格

    In [5]:
    data = pd.read_excel(file_path, sheet_name=1)
    data
    
    Out[5]:
     
     序号姓名年龄
    0 1 小明 18
    1 2 小红 19
    2 3 小张 12
    3 4 小李 13
    4 5 小皮球 4
    5 6 小王八 5
    6 7 南山 75
    7 8 大海 64
    8 9 轻松 23
    9 10 不好 12
    In [6]:
    data = pd.read_excel(file_path, sheet_name=[1])
    data
    
    Out[6]:
    OrderedDict([(1,    序号   姓名  年龄
                  0   1   小明  18
                  1   2   小红  19
                  2   3   小张  12
                  3   4   小李  13
                  4   5  小皮球   4
                  5   6  小王八   5
                  6   7   南山  75
                  7   8   大海  64
                  8   9   轻松  23
                  9  10   不好  12)])
    In [7]:
    data = pd.read_excel(file_path, sheet_name=[0,1])
    data
    
    Out[7]:
    OrderedDict([(0,
                     School Class    ID Gender   Address  Height  Weight  Math Physics
                  0     S_1   C_1  1101      M  street_1     173      63  34.0      A+
                  1     S_1   C_1  1102      F  street_2     192      73  32.5      B+
                  2     S_1   C_1  1103      M  street_2     186      82  87.2      B+
                  3     S_1   C_1  1104      F  street_2     167      81  80.4      B-
                  4     S_1   C_1  1105      F  street_4     159      64  84.8      B+
                  5     S_1   C_2  1201      M  street_5     188      68  97.0      A-
                  6     S_1   C_2  1202      F  street_4     176      94  63.5      B-
                  7     S_1   C_2  1203      M  street_6     160      53  58.8      A+
                  8     S_1   C_2  1204      F  street_5     162      63  33.8       B
                  9     S_1   C_2  1205      F  street_6     167      63  68.4      B-
                  10    S_1   C_3  1301      M  street_4     161      68  31.5      B+
                  11    S_1   C_3  1302      F  street_1     175      57  87.7      A-
                  12    S_1   C_3  1303      M  street_7     188      82  49.7       B
                  13    S_1   C_3  1304      M  street_2     195      70  85.2       A
                  14    S_1   C_3  1305      F  street_5     187      69  61.7      B-
                  15    S_2   C_1  2101      M  street_7     174      84  83.3       C
                  16    S_2   C_1  2102      F  street_6     161      61  50.6      B+
                  17    S_2   C_1  2103      M  street_4     157      61  52.5      B-
                  18    S_2   C_1  2104      F  street_5     159      97  72.2      B+
                  19    S_2   C_1  2105      M  street_4     170      81  34.2       A
                  20    S_2   C_2  2201      M  street_5     193     100  39.1       B
                  21    S_2   C_2  2202      F  street_7     194      77  68.5      B+
                  22    S_2   C_2  2203      M  street_4     155      91  73.8      A+
                  23    S_2   C_2  2204      M  street_1     175      74  47.2      B-
                  24    S_2   C_2  2205      F  street_7     183      76  85.4       B
                  25    S_2   C_3  2301      F  street_4     157      78  72.3      B+
                  26    S_2   C_3  2302      M  street_5     171      88  32.7       A
                  27    S_2   C_3  2303      F  street_7     190      99  65.9       C
                  28    S_2   C_3  2304      F  street_6     164      81  95.5      A-
                  29    S_2   C_3  2305      M  street_4     187      73  48.9       B
                  30    S_2   C_4  2401      F  street_2     192      62  45.3       A
                  31    S_2   C_4  2402      M  street_7     166      82  48.7       B
                  32    S_2   C_4  2403      F  street_6     158      60  59.7      B+
                  33    S_2   C_4  2404      F  street_2     160      84  67.7       B
                  34    S_2   C_4  2405      F  street_6     193      54  47.6       B),
                 (1,    序号   姓名  年龄
                  0   1   小明  18
                  1   2   小红  19
                  2   3   小张  12
                  3   4   小李  13
                  4   5  小皮球   4
                  5   6  小王八   5
                  6   7   南山  75
                  7   8   大海  64
                  8   9   轻松  23
                  9  10   不好  12)])
    In [8]:
    data = pd.read_excel(file_path, sheet_name=2)
    data
    
    Out[8]:
     
     1小明18
    0 2 小红 19
    1 3 小张 12
    2 4 小李 13
    3 5 小皮球 4
    4 6 小王八 5
    5 7 南山 75
    6 8 大海 64
    7 9 轻松 23
    8 10 不好 12
     

    2.header:指定作为列名的行,默认0,即取第一行的值为列名。数据为列名行以下的数据;若数据不含列名,则设定 header = None

    In [9]:
    data = pd.read_excel(file_path, sheet_name=2, header=None)
    data
    
    Out[9]:
     
     012
    0 1 小明 18
    1 2 小红 19
    2 3 小张 12
    3 4 小李 13
    4 5 小皮球 4
    5 6 小王八 5
    6 7 南山 75
    7 8 大海 64
    8 9 轻松 23
    9 10 不好 12
     

    3.指定列的名字,传入一个list数据,默认为None。

    In [10]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, names=['a', 'b', 'c'])
    data
    
    Out[10]:
     
     abc
    0 1 小明 18
    1 2 小红 19
    2 3 小张 12
    3 4 小李 13
    4 5 小皮球 4
    5 6 小王八 5
    6 7 南山 75
    7 8 大海 64
    8 9 轻松 23
    9 10 不好 12
    In [11]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, index_col=1)
    data
    
    Out[11]:
     
     02
    1  
    小明 1 18
    小红 2 19
    小张 3 12
    小李 4 13
    小皮球 5 4
    小王八 6 5
    南山 7 75
    大海 8 64
    轻松 9 23
    不好 10 12
     

    4.指定列为索引列,默认None列, index_col = 0——第一列为index值

    In [12]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, index_col=0)
    data
    
    Out[12]:
     
     12
    0  
    1 小明 18
    2 小红 19
    3 小张 12
    4 小李 13
    5 小皮球 4
    6 小王八 5
    7 南山 75
    8 大海 64
    9 轻松 23
    10 不好 12
     

    5.usecols:int或list,默认为None</br> 如果为None则解析所有列</br> 如果为int则表示要解析的最后一列</br> 如果为int列表则表示要解析的列号列表</br> 如果字符串则表示以逗号分隔的Excel列字母和列范围列表(例如“A:E”或“A,C,E:F”)。范围包括双方。

    In [13]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, usecols=1)
    data
    
    Out[13]:
     
     01
    0 1 小明
    1 2 小红
    2 3 小张
    3 4 小李
    4 5 小皮球
    5 6 小王八
    6 7 南山
    7 8 大海
    8 9 轻松
    9 10 不好
    In [14]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, usecols=2)
    data
    
    Out[14]:
     
     012
    0 1 小明 18
    1 2 小红 19
    2 3 小张 12
    3 4 小李 13
    4 5 小皮球 4
    5 6 小王八 5
    6 7 南山 75
    7 8 大海 64
    8 9 轻松 23
    9 10 不好 12
    In [15]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, usecols="A:B")
    data
    
    Out[15]:
     
     01
    0 1 小明
    1 2 小红
    2 3 小张
    3 4 小李
    4 5 小皮球
    5 6 小王八
    6 7 南山
    7 8 大海
    8 9 轻松
    9 10 不好
    In [16]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, usecols="A:C")
    data
    
    Out[16]:
     
     012
    0 1 小明 18
    1 2 小红 19
    2 3 小张 12
    3 4 小李 13
    4 5 小皮球 4
    5 6 小王八 5
    6 7 南山 75
    7 8 大海 64
    8 9 轻松 23
    9 10 不好 12
     

    6.skiprows:省略指定行数的数据,从第一行开始

    In [17]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, usecols="A:C", skiprows=1)
    data
    
    Out[17]:
     
     012
    0 2 小红 19
    1 3 小张 12
    2 4 小李 13
    3 5 小皮球 4
    4 6 小王八 5
    5 7 南山 75
    6 8 大海 64
    7 9 轻松 23
    8 10 不好 12
    In [18]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, usecols="A:C", skiprows=[0, 2])
    data
    
    Out[18]:
     
     012
    0 2 小红 19
    1 4 小李 13
    2 5 小皮球 4
    3 6 小王八 5
    4 7 南山 75
    5 8 大海 64
    6 9 轻松 23
    7 10 不好 12
     

    7.skip_footer:省略从尾部数的行数据,没有第0行,从1开始

    In [19]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, usecols="A:C", skipfooter=1)
    data
    
    Out[19]:
     
     012
    0 1 小明 18
    1 2 小红 19
    2 3 小张 12
    3 4 小李 13
    4 5 小皮球 4
    5 6 小王八 5
    6 7 南山 75
    7 8 大海 64
    8 9 轻松 23
     

    8.nrows : int型,默认为None,解析0-所指定的行数

    In [20]:
    data = pd.read_excel(file_path, sheet_name=2, header=None, nrows=3)
    data
    
    Out[20]:
     
     012
    0 1 小明 18
    1 2 小红 19
    2 3 小张 12
  • 相关阅读:
    2017.12.16 扫雷小游戏未完成
    2017.12.15 计算机算法分析与设计 枚举
    2017.12.14 Java实现-----图书管理系统
    2017.12.13 Java中是怎样通过类名,创建一个这个类的数组
    2017.12.12 基于类的面向对象和基于原型的面向对象方式比较
    2017.12.11 String 类中常用的方法
    2017.12.10 Java写一个杨辉三角(二维数组的应用)
    2017.12.9 Java中的排序---冒泡排序、快速排序、选择排序
    spring boot compiler 版本实践
    spring boot 首次请求Controller慢
  • 原文地址:https://www.cnblogs.com/xinmomoyan/p/13700813.html
Copyright © 2020-2023  润新知