Python数据分析 知识量:13 - 56 - 232
Python中将分析结果保存为csv文件时,可以使用to_csv()函数。要设置csv文件的导出路径,需要用到参数path_or_buf。
import pandas as pd df=pd.read_excel(r"D:\PythonTestFile\exam_new.xlsx") print(df) df.to_csv(path_or_buf=r"D:\PythonTestFile\save_csv.csv")
运行结果为:
Name Sex Age Chinese English Math 0 Noah male 15 90 50 66 1 Emma female 16 56 56 55 2 Bob male 15 99 84 89 3 Olivia female 17 86 87 44 4 Jeff male 16 48 87 65 5 Liam male 14 55 88 69 6 Sophia female 15 90 66 96 7 Isabella female 16 66 85 55
结果将保存到文件save_csv.csv,其内容使用记事本打开时如下所示:
,Name,Sex,Age,Chinese,English,Math 0,Noah,male,15,90,50,66 1,Emma,female,16,56,56,55 2,Bob,male,15,99,84,89 3,Olivia,female,17,86,87,44 4,Jeff,male,16,48,87,65 5,Liam,male,14,55,88,69 6,Sophia,female,15,90,66,96 7,Isabella,female,16,66,85,55
与导出到Excel文件时一样,运行以上代码时,需要确保相关csv文件没有处于打开状态。
与导出到Excel文件时一样,可以通过将参数index设为False,去除索引列。
import pandas as pd df=pd.read_excel(r"D:\PythonTestFile\exam_new.xlsx") print(df) df.to_csv(path_or_buf=r"D:\PythonTestFile\save_csv.csv",index=False)
运行后,csv文件的内容如下:
Name,Sex,Age,Chinese,English,Math Noah,male,15,90,50,66 Emma,female,16,56,56,55 Bob,male,15,99,84,89 Olivia,female,17,86,87,44 Jeff,male,16,48,87,65 Liam,male,14,55,88,69 Sophia,female,15,90,66,96 Isabella,female,16,66,85,55
同样可以使用参数columns来设置要导出的列。
import pandas as pd df=pd.read_excel(r"D:\PythonTestFile\exam_new.xlsx") print(df) df.to_csv(path_or_buf=r"D:\PythonTestFile\save_csv.csv",index=False, columns=['Name','Chinese','Math'])
运行结果为:
Name Sex Age Chinese English Math 0 Noah male 15 90 50 66 1 Emma female 16 56 56 55 2 Bob male 15 99 84 89 3 Olivia female 17 86 87 44 4 Jeff male 16 48 87 65 5 Liam male 14 55 88 69 6 Sophia female 15 90 66 96 7 Isabella female 16 66 85 55
运行后,csv文件的内容如下:
Name,Chinese,Math Noah,90,66 Emma,56,55 Bob,99,89 Olivia,86,44 Jeff,48,65 Liam,55,69 Sophia,90,96 Isabella,66,55
导出的csv文件默认使用逗号作为分隔符,常用的分隔符还有空格、分号、制表符等,可以使用参数sep来设置其他分隔符。
import pandas as pd df=pd.read_excel(r"D:\PythonTestFile\exam_new.xlsx") print(df) df.to_csv(path_or_buf=r"D:\PythonTestFile\save_csv.csv", index=False, sep=';')
运行后,csv文件的内容如下:
Name;Sex;Age;Chinese;English;Math Noah;male;15;90;50;66 Emma;female;16;56;56;55 Bob;male;15;99;84;89 Olivia;female;17;86;87;44 Jeff;male;16;48;87;65 Liam;male;14;55;88;69 Sophia;female;15;90;66;96 Isabella;female;16;66;85;55
使用Python导出csv文件默认的编码格式是utf-8,当数据中含有中文时,最好使用参数encoding将编码格式设置为gbk,以确保csv文件中不会出现乱码。
import pandas as pd df=pd.read_excel(r"D:\PythonTestFile\exam_chinese.xlsx") print(df) df.to_csv(path_or_buf=r"D:\PythonTestFile\save_csv.csv", index=False, encoding='gbk')
运行结果为
姓名 性别 年龄 语文 英语 数学 0 Noah male 15 90 50 66 1 Emma female 16 56 56 55 2 Bob male 15 99 84 89 3 Olivia female 17 86 87 44 4 Jeff male 16 48 87 65 5 Liam male 14 55 88 69 6 Sophia female 15 90 66 96 7 Isabella female 16 66 85 55
运行后,csv文件的内容如下:
姓名,性别,年龄,语文,英语,数学 Noah,male,15,90,50,66 Emma,female,16,56,56,55 Bob,male,15,99,84,89 Olivia,female,17,86,87,44 Jeff,male,16,48,87,65 Liam,male,14,55,88,69 Sophia,female,15,90,66,96 Isabella,female,16,66,85,55
与导出到Excel文件时一样,导出到csv文件时,对于缺失值,可以通过参数na_rep来进行填充设置。
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6