• 《对比Excel,轻松学习Python数据分析》读书笔记------结果导出


    12 结果导出

    Excel

    “另存为”,"保存类型"选择导出的各种文件类型。

    在这里插入图片描述

    Python

    12.1 导出为xlsx

    df.to_excel(excel_writer,
                sheet_name: 'str' = 'Sheet1',
                na_rep: 'str' = '',
                float_format: 'str | None' = None,
                columns=None,
                header=True,
                index=True,
                index_label=None,
                startrow=0,
                startcol=0,
                inf_rep='inf')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • excel_writer设置文件保存路径
    • sheet_name设置保存到的Sheet名。默认Sheet1
    • na_rep设置空值的替换值。
    • float_format设置小数的格式。如':2f'表示保留两位小数
    • columns设置想要保存的列。
    • header设置是否保存列索引。也可以传入一组新的列名来替换保存。
    • index设置是否保存行索引。
    • index_label设置行索引的列名。
    • startrow设置df数据在保存的Sheet中左上角的行数。
    • startcol设置df数据在保存的Sheet中左上角的行数。
    • inf_rep设置无限值的替换值。

    如:

    students = pd.read_excel("./files/demo.xlsx", sheet_name=0)
    print(students)
    """
       个人编号   姓名  学校编号  高考成绩
    0     1  李云龙     1   580
    1     2   郭靖     2   720
    2     3  白展堂     3   660
    3     4   拜登     1   630
    4     5   李白     2   470
    5     6  邓丽君     3   620
    6     7  李小龙     1   603
    7     8  周星驰     2   650
    8     9   谭乔     3   579
    9    10   与山     1   588
    """
    
    schools = pd.read_excel("./files/demo.xlsx", sheet_name=2)
    print(schools)
    """
       学校编号  学校名称  地区  地区一本线
    0     1  江西一中  江西    540
    1     2  北京一中  北京    600
    2     3  浙江一中  浙江    530
    """
    
    df = students.merge(schools)
    print(df)
    """
       个人编号   姓名  学校编号  高考成绩  学校名称  地区  地区一本线
    0     1  李云龙     1   580  江西一中  江西    540
    1     4   拜登     1   630  江西一中  江西    540
    2     7  李小龙     1   603  江西一中  江西    540
    3    10   与山     1   588  江西一中  江西    540
    4     2   郭靖     2   720  北京一中  北京    600
    5     5   李白     2   470  北京一中  北京    600
    6     8  周星驰     2   650  北京一中  北京    600
    7     3  白展堂     3   660  浙江一中  浙江    530
    8     6  邓丽君     3   620  浙江一中  浙江    530
    9     9   谭乔     3   579  浙江一中  浙江    530
    """
    
    df.to_excel("./files/result.xlsx",
                sheet_name="成绩对比表",
                columns=["个人编号", "姓名", "高考成绩", "地区", "地区一本线"],
                index=False)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45

    在这里插入图片描述

    12.2 导出为csv

    df.to_csv(path_or_buf: 'FilePath | WriteBuffer[bytes] | WriteBuffer[str] | None' = None,
              sep: 'str' = ',',
              na_rep: 'str' = '',
              float_format: 'str | None' = None,
              columns: 'Sequence[Hashable] | None' = None,
              header: 'bool_t | list[str]' = True,
              index: 'bool_t' = True,
              index_label: 'IndexLabel | None' = None,
              mode: 'str' = 'w',
              quotechar: 'str' = '"',
              line_terminator: 'str | None' = None,
              date_format: 'str | None' = None,
              decimal: 'str' = '.')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • path_or_buf设置文件保存路径。

    • sep设置分隔符。csv格式默认分隔符为,

    • na_rep,float_format,columns,headers,index,index_label参数的含义同to_excel()

    • mode设置写入模式。同Python文件操作。

    • quotechar设置引号字符

    • line_terminator设置换行符。默认与系统的换行符相同(Linux下的\\n,Windows下的\\r\\n)

    • date_format设置日期数据的格式。

    • decimal设置小数点字符

    如:

    df.to_csv("./files/result.csv",
                columns=["个人编号", "姓名", "高考成绩", "地区", "地区一本线"],
                index=False)
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    12.3 保存为mysql

    df.to_sql(name: 'str',
              con,
              if_exists: 'str' = 'fail',
              index: 'bool_t' = True,
              index_label=None)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • name设置要保存到的数据表的名称。
    • con设置数据库连接对象
    • if_exists设置如果数据库中如果已存在名为name的数据表后,采取的行为。fail报错,replace覆盖,append附加
    • index,index_label参数的含义同to_excel()

    如:

    from sqlalchemy import create_engine  # 导入创建连接对象的方法
    
    engine = create_engine(
        'mysql+pymysql://user:password@localhost/database')  # 创建连接对象
    # user:用户名   password:密码  localhost:ip地址   database:数据库名
    df.to_sql("grades_compared", con=engine, index=False)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

  • 相关阅读:
    基于美团技术团队最新开源的yolov6模型实现裸土检测
    FANUC机器人RSR自动运行模式的相关配置和参数设置(图文)
    圣杯布局和双飞翼布局
    【学习笔记】RabbitMQ
    微信小程序中监听横屏竖屏
    数据结构总集—Java版本
    java继承
    Nginx 配置错误导致漏洞
    探视分机对接医疗平台
    【算法笔记】求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
  • 原文地址:https://blog.csdn.net/ncu5509121083/article/details/126232116