pandas 数据处理1

本片给大介绍数据的读写部分

(一)数据读取

1:pandas 读取csv数据

score_df=pd.read_csv("./学生成绩单.csv",index_col="序号",chunksize=10000,sep=",",skiprows=[1],encoding="utf-8",error_bad_lines=False)

下面介绍下常用的参数和含义

sep = ",",  #csv文件的分割符号版默认为,
# Column and Index Locations and Names

index_col = None,  #索引的列明
skiprows = None, #跳过的行号
skip_blank_lines = True, #是否跳过空白行
# Datetime Handling
chunksize = None,  #每次读取的行数
# Quoting, Compression, and File Format
compression = "infer",
thousands = None,
# Error Handling
error_bad_lines = True, #是否忽略含有错误的行数
2:读取是常见的错误

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc9 in position 2: invalid continuation byte

编码错误,可以尝试其他的编码格式gbk,gb18030等其他格式,或者使用记事本将csv文件另存为utf-8格式重新尝试

此外在常见编码都试过之后任然会用几行报错此时 error_bad_lines 参数就可派上用场了error_bad_lines = False 可以忽略含有错位的行

3:读取较大文件

文件过大是可能会导致占用高,此时可以使用chunksize 来控制每次读入的行数,次数读入的是一个iter 可以通过循环来处理。

读取excel  使用pd.read_excel接口其他的基本上没有什么区别,就不再此赘述。问题的伙伴可以留言!

4:使用sql 读取数据

使用pd.read_sql(sql=sel,con=conn) #conn 为数据的conn 对象

(二 )输出的保存

一般比较常用的将是文件保存为csv文件

score_df.to_csv("./学上成绩单副本.csv",mode="a",encoding="utf-8",header=True)

参数 mode="a"表示在追加的模式,header 可以选择是否写入标题。

注意:在mode=:"a"的情况下,如果程序中写入列的顺序不同会导致多次追加的列不对齐!!!

写在后面,后面会出一些pandas 处理数据的一列文件,有兴趣的记得收藏本号!

 

你可能感兴趣的:(pandas,python,表格工具)