目录

一、读数据

二、将df存为excel

1、pandas.DataFrame.to_csv() 函数语法

2、利用 import os 获取保存路径

3、产生新的数据,添加至上述csv文件中已有数据的后面

4、多sheet,指定存入的sheet

5、df.to_csv()出现中文乱码的解决办法

一、读数据

sep:默认以逗号分隔

header:是否包含表头

df = pd.read_csv('data.csv', sep='\t',header=None, names=['var_code','var_name','var_desc'])

二、将df存为excel

1、pandas.DataFrame.to_csv() 函数语法

pandas.DataFrame.to_csv(path_or_buf= None,sep= ",",na_rep= "",float_format= None,columns= None,header= True,index= True,index_label= None,mode= "w",encoding= None,compression= "infer",quoting= None,quotechar= '""',line_terminator= None,chunksize= None,date_format= None,doublequote= True,escapechar= None,decimal= ".")

是否加表头和行索引

index_A = df[df[0] == "<!AAA>"].index.tolist()
df_A = df.iloc[index_A[0]+1:index_A[1], ]
print('索引', index_A)
print(df_A)
df_A.to_csv('AAA.csv', header=False, index=False, encoding='utf-8-sig')

默认情况下保存文件会保存到和当前执行的文件相同的文件夹中

a=np.random.random(100)
a=a.reshape(25,4)
a=pd.DataFrame(a)
a.to_csv('G:\\0py\\result\\a.csv')

注意,路径一定要用双斜杠,用单斜杠会报错,原因未知

2、利用 import os 获取保存路径

import os    #获取当前工作路径
import pandas as pd   #将数据保存至相应文件中file = os.getcwd() + '\\1.csv'    #保存文件位置,即当前工作路径下的csv文件
data = pd.DataFrame({'a':[1, 2, 3], 'b': [4, 5, 6]})  #要保存的数据
data.to_csv(file, index=False)   #数据写入,index=False表示不加索引

3、产生新的数据,添加至上述csv文件中已有数据的后面

#新数据,与data具有相同的和列与列名
data2 = pd.DataFrame({'a':[7, 8, 9], 'b': [1, 2, 3]})
#保存至file文件中,index=False表示文件中不添加索引,header=False表示不添加列名,mode='a+'表示在已有数据基础上添加新数据,并不覆盖已有数据
data2.to_csv(file, index=False, mode='a+', header=False)

4、多sheet,指定存入的sheet

直接用pd.to_excel()指定sheet_name时,即使指定sheet_name也没用,后一次的写入数据会覆盖前一次写入的数据,解决方法如下,借助pandas中的ExcelWriter方法;

 1 # 方法1,推荐方法2 with pd.ExcelWriter('test.xlsx') as writer:3     data.to_excel(writer, sheet_name='data')4     data2.to_excel(writer, sheet_name='data2')5 6 # 写法27 writer = pd.ExcelWriter('test.xlsx')8 data.to_excel(writer, sheet_name='data')9 data.to_excel(writer, sheet_name='data2')
10 writer.save()
11 writer.close()

5、df.to_csv()出现中文乱码的解决办法

解决办法:只需在后面加上 encoding='utf_8_sig'

df.to_csv('F:\\test\\688019.csv', index=False, encoding='utf_8_sig')
     'utf-8' 和 'utf_8_sig' 的区别:”utf-8“ 是以字节为编码单元,它的字节顺序在所有系统中都是一样的,没有字节序问题,因此它不需要BOM,所以当用"utf-8"编码方式读取带有BOM的文件时,它会把BOM当做是文件内容来处理。"uft-8-sig"中sig全拼为 signature 也就是"带有签名的utf-8", 因此"utf-8-sig"读取带有BOM的"utf-8文件时"会把BOM单独处理,与文本内容隔离开。

【Pandas学习】读、存excel数据相关推荐

  1. 用pandas批量分组处理excel数据

    用pandas批量分组处理excel数据 需求比较简单,按照指定字段分组,计算指定字段的和或均值. 用SQL处理的话就一个groupby,可是没有数据库环境,只好用python(比起SQL真的是一点也 ...

  2. python《pandas入门》实现Excel数据字段的拆分

    ** python<pandas入门>实现Excel数据字段的拆分 ,简单说一下自己为什么写博客,主要原因如下: 1,先简单介绍下自己,我是药学本科毕业,工作几年了.在这几年里做过药物相关 ...

  3. python pandas csv读取_如何用 pandas 读取 csv 和 Excel 数据

    本文采用真实的股票数据作为案例,教你如何在Python中读取常用的数据文件. 内容: 读取csv数据 读取Excel数据 合并多张表 数据文件下载地址: 读取csv数据 csv文件用逗号来分隔数值,是 ...

  4. python用pandas读取excel_Python 中利用Pandas处理复杂的Excel数据

    关于Excel数据处理,很多同学可能使用过Pyhton的pandas模块,用它可以轻松地读取和转换Excel数据.但是实际中Excel表格结构可能比较杂乱,数据会分散不同的工作表中,而且在表格中分布很 ...

  5. 【Python】Pandas读存Excel大全

    公众号:尤而小屋 作者:Peter 编辑:Peter 本文记录的是如何通过Pandas来读取Excel文件,以及如何将DataFrame保存到Excel文件中. 官网参数详解:https://pand ...

  6. Pandas读存Excel大全

    公众号:尤而小屋 作者:Peter 编辑:Peter 本文记录的是如何通过Pandas来读取Excel文件,以及如何将DataFrame保存到Excel文件中. 官网参数详解:https://pand ...

  7. pandas结合matplotlib将excel数据可视化

    用pandas将数据读出来 import pandas as pd data = pd.read_excel('D:\\python_workspace\\data.xlsx') 用matplotli ...

  8. python用pandas读取excel_浅谈python之利用pandas和openpyxl读取excel数据

    在学接口自动化测试时, 需要从excel中读取测试用例的数据, 假如我的数据是这样的: 最好是每行数据对应着一条测试用例, 为方便取值, 我选择使用pandas库, 先安装 pip install p ...

  9. [Python] openpyxl读存大数据 Exception: String longer than 32767 characters

    xlwt缺点: 版本 只能处理Excel97-2003或Excel 97之前版本的xls格式 存储数据过大 存储数据过大时,会报错Exception: String longer than 32767 ...

最新文章

  1. 从封装函数到实现简易版自用jQuery (一)
  2. Codeforces 982 C. Cut 'em all! 图的遍历
  3. python 输出引号_python输出字符串单双引号如何选择
  4. VINS(五)非线性优化与在线标定调整
  5. Cloudera Manager 5和CDH5(最新版5.1.3) 安装
  6. 运用PhantomJS测试JavaScript
  7. 图论——两道并查集例题
  8. ​基于强化学习的自动交易系统研究与发展综述
  9. ui设计移动端字体适配_22个在移动端UI设计中常用的英文设计字体
  10. 华为悦盒EC6109U(联通IPTV机顶盒)
  11. 计算机二级数据模拟表,2020年计算机二级《Access数据库程序设计》模拟题(5)...
  12. 汇总:各类手游渠道特点及选择方法
  13. 技术篇(二)Demo示例——Bundle打包和加载
  14. 薅羊毛!企业微信自动加好友工具免费使用机会!
  15. STM32学习笔记(11)电容触摸按键
  16. Android开机自启自动轮播图片或自动轮播视频APP
  17. 基于pyqt的图像处理界面设计
  18. mac如何查看mysql是否卸载干净_mac 干净卸载 mysql
  19. 上位机和下位机的区别
  20. listbox java_ListBox控件

热门文章

  1. index4.html
  2. 本人一年以来,呕心沥血收集“袁峰(MSFT)”大哥精彩回帖的贴子,现在回报社会。有不全的请
  3. 联咏 Nt9832x Uboot升级all-in-one流程
  4. 清澄11.26测试赛解题报告
  5. 软解码方案之-DSADC结果中断和时间戳中断MCAL配置实现
  6. 发布移动App应用,Android应用市场发布渠道
  7. WiFi室内导航技术日渐成熟 认识不足影响普及
  8. graph embedding 论文及源码阅读 deepwalk line node2vec bine
  9. 5.CSS背景 background
  10. 程序员亲述,从外包公司跳槽到字节跳动!