Python-Excel文件读写

1、Excel文件读取

import pandas as pd
import numpy as np
data=pd.read_excel('/Users/xxx/data.xlsx',sheet_name=1,names=['F1','F2','F3','F4','F5','F6','F7'],header=None,skiprows=1)

read_excel函数的usecols用来指定列,而skip_rows用来过滤行。

usecols参数可选类型:
1、默认是None,全选
2、str类型:'A,B,C'或者'A:C'或者'A,B:C’
3、int-list类型:[0,1];
4、str-list类型:['var1','var2'],为表格中列名;
5、函数:会把列名传入判断函数结果是否为True,可以用或|来做多个判断
skiprows参数可选类型:
1、int类型:1代表跳过1行,不是索引1的意思
2、int-list类型:[0,1]代表跳过索引为0和1的行
代码演示如下:

# -*- coding: utf-8 -*-

import pandas as pd
df = pd.read_excel('aa.xlsx')
df1 = pd.read_excel('aa.xlsx',usecols='B:E',skiprows=[0])
df2 = pd.read_excel('aa.xlsx',usecols='B,C,D,E',skiprows=[0])
df3 = pd.read_excel('aa.xlsx',usecols=[1,2,3,4],skiprows=[0])
df4 = pd.read_excel('aa.xlsx',usecols=['id','name','sex','age'],skiprows=[0])
df4 = pd.read_excel('aa.xlsx',usecols=lambda x:x in ['id','name','sex','age'],skiprows=[0])
df5 = pd.read_excel('aa.xlsx',usecols=lambda x:x in ['id','name','sex','age'],skiprows=1)
pd.read_excel(
io, #string类型文件的路径或url. '/.../data.xlsx'
sheet_name=0, #指定的excel中的具体某个或某些表的表名或表索引.
header=0, #以哪些行作为表头,也叫做列名.
names=None, #自己定义一个表头(列名).
index_col=None, #将哪些列设为索引.
usecols=None, #指定读取excel中哪些列的数据,默认为None,表示读取全部.,
squeeze=False, #默认为False,如果解析的数据只包含一列,则返回一个Series。
dtype=None, #接收dict,设置数据类型,具体到每列.
engine=None, #如果io不是缓冲区或路径,则必须将其设置为标识io。可接受的值是None、“xlrd”、“openpyxl”或“odf”.
converters=None, #类型为字典(dict).默认为None.进行值转换。{列名:str}
true_values=None, #默认:None,接收一个list,将在list中的值转换成True,只有在整列值都能转换成bool值时才能成功。
false_values=None, #默认:None,接收一个list,将在list中的值转换成False,只有在整列值都能转换成bool值时才能成功。
skiprows=None, #跳过excel中的某些行来读取数据.
nrows=None, #指定要读取excel表中哪些行的数据.
na_values=None, #设置指定值填充为NaN.
keep_default_na=True,
verbose=False, #布尔类型, 默认为 False.显示列表中除去数字列,NA值的数量.
parse_dates=False, #指定解析成日期格式的列.
date_parser=None, #funtion.指定解析日期格式的函数.
thousands=None, #将字符串列解析为数字的数千个分隔符。
comment=None, #将一个或多个字符传递给此参数以指示输入文件中的注释。
skipfooter=0, #省略指定行数的数据,从尾部数的行开始。
convert_float=True, #布尔, 默认为 True.将积分浮点数转换为int(即1.0 - > 1)。
mangle_dupe_cols=True, #布尔类型,默认为True.重复列将被指定为“X”、“X.1”、“X.N”.
**kwds)

2、data.to_excel('/Users/xxx/test.xlsx')

to_excel()方法的功能是将DataFrame对象写入到Excel工作表中,语法格式如下:

pd.to_excel(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)

上述方法中常用参数的含义有以下几个:
1. excel_writer:表示读取得文件路径
2. sheet_name:表示工作表的名称,可以接受字符串,默认为“sheet1”
3. na_rep:表示缺失数据,不写默认为空
4. index:表示是否写行索引,默认为True

posted @ 2022-01-28 11:35  shirly_zhang  阅读(226)  评论(0编辑  收藏  举报