美文网首页
Pandas - 1. 数据的读取和保存

Pandas - 1. 数据的读取和保存

作者: 陈天睡懒觉 | 来源:发表于2022-04-29 10:29 被阅读0次

    读取数据

    pd.read_excel()

    • 读取.xlsx文件
    • 文件名可以包含中文
    • 读取的内容有中文不会乱码

    pd.read_pickle()

    • 读取.pickle文件
    • 文件名可以有中文
    • 读取的内容有中文不会乱码

    pd.read_csv()

    • 读取.csv文件
    • 文件名不可以有中文(会报错)
    • 关于中文乱码:可以尝试 encoding='gbk'

    读取.csv文件报错的部分原因,在Excel中将.xlsx另存为.csv文件时:

    • 选择 CSV UTF-8 格式,有无中文都不会出错(举例文件名末尾csv_utf8)
    • 选择 CSV 格式,有中文会出错,无中文不会出错(举例文件名末尾csv)
    import pandas as pd
    
    # 读取.xlsx文件
    df1 = pd.read_excel('data/安全可靠.xlsx')
    
    # 读取.pickle文件
    df2 = pd.read_pickle('data/安全可靠.pkl')
    
    # 读取.csv文件
    df3 = pd.read_csv('data/Safe_and_reliable.csv',encoding='gbk')
    
    # 读取.csv文件报错的部分原因
    df4 = pd.read_csv('data/Economic_and_efficient.csv') # 不用encoding='gbk'也可读取且中文不乱码
    # df5 = pd.read_csv('data/Safe_and_reliable_csv.csv') # 报错'utf-8' codec can't decode byte 0xb5 in position 0: invalid start byte
    df5 = pd.read_csv('data/Safe_and_reliable_csv_utf8.csv') # 不用encoding='gbk'也可读取且中文不乱码
    df6 = pd.read_csv('data/Economic_and_efficient_csv.csv') # 不用encoding='gbk'也可读取且中文不乱码
    

    保存数据

    df.to_pickle()

    • 保存成.pkl文件
    • 文件中含有中文字符也行

    df.to_csv()

    • 保存成.csv文件
    • 文件中有中文字符时,需要添加 encoding='utf_8_sig',才可避免乱码
    • 删除行号 index=False

    df.to_excel()

    • 保存成.xls/.xlsx文件
    • 文件中有中文,不需指明编码,不会乱码
    # 保存成.pkl文件
    df2.to_pickle('save/Safe_and_reliable.pkl')
    
    # 保存成.csv文件
    df2.to_csv('save/Safe_and_reliable.csv',encoding='utf_8_sig',index=False)
    
    # 保存成.xls文件
    import xlwt # 不导入也可使用函数
    df2.to_excel('save/Safe_and_reliable.xls',index=False)
    
    # 保存成.xlsx文件
    import openpyxl # 不导入也可使用函数
    df2.to_excel('save/Safe_and_reliable.xlsx',index=False)
    

    相关文章

      网友评论

          本文标题:Pandas - 1. 数据的读取和保存

          本文链接:https://www.haomeiwen.com/subject/bsxyyrtx.html