【Pandas学习】读、存excel数据

news/2024/7/4 13:01:47

目录

一、读数据

二、将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 # 写法2
 7 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单独处理,与文本内容隔离开。

http://www.niftyadmin.cn/n/3538199.html

相关文章

c++官方文档-指针

c官方文档-指针 #include<stdio.h> #include<iostream> #include<queue> #include<map> #include<memory.h> #include <math.h> #include <stdlib.h> #include <algorithm> #include <climits> #include <sstream>…

【聚类学习】时间序列聚类—10年回顾概括性综述

目录 一、引言 二、时间序列聚类的作用 三、时间序列数据的聚类问题正式定义 四、时序数据的聚类的挑战 五、时间序列数据聚类有什么用 六、时间序列聚类技术的分类 七、时间序列聚类的四步骤&#xff1a; 1、时间序列的representation 2、时序聚类中相似度的定义 关于…

第 4 章 Vulnerability Scanner

目录 4.1. Nessus4.2. OpenVAS4.1. Nessus http://www.nessus.org/ [rootcentos6 src]# rpm -ivh Nessus-4.4.1-es6.x86_64.rpm Preparing... ########################################### [100%]1:Nessus ##################################…

【深度学习3】Self-Attention注意力机制(李宏毅)

2021 - 自注意力机制(Self-attention)(上)_哔哩哔哩_bilibili 2021 - 自注意力机制 (Self-attention) (下)_哔哩哔哩_bilibili 目录 三种输入输出间关系 常规方法 注意力机制原理 Self-attention的问题 和其他网络对比 在Graph上的应用 更多 三种输入输出间关系 3种类…

saltstack的探索-grains

saltstack的探索-grains 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311…

【深度学习4】GNN图神经网络介绍(李沐)

目录 介绍 图的定义 数据的图的表示 1、图片的图表示&#xff08;11&#xff1a;50&#xff09; 2、文本的图表示 3、分子的图表示 4、社交网络的图表示 数据统计 三大类问题 1、图层面的任务 2、顶点层面的任务 3、边级层面的任务 将图用在机器学习上的挑战 1、挑战 …

【深度学习5】GCN 图卷积神经网络原理

目录 前言 GCN是做什么的 GCN主要思想 数学原理 GCN长什么样 GCN为什么是这个亚子 GCN有多牛 其他关于GCN的点滴 参考文章&#xff1a; 何时能懂你的心——图卷积神经网络&#xff08;GCN&#xff09; - 知乎 (zhihu.com) 2020年&#xff0c;我终于决定入门GCN - 知…

ELSE 技术周刊(2018.01.01期)

业界动态 小程序又搞事情&#xff0c;H5 开发的春天来了&#xff01; 就在刚刚&#xff0c;微信官方公布了几个小程序爆炸性的新闻&#xff0c;在 2017 年的年底&#xff0c;这个新闻似乎是在告诉大家&#xff0c;小程序能做的事越来越多&#xff0c;2018 年你再也没法再忽视它…