Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >python对CSV、Excel、txt

python对CSV、Excel、txt

作者头像
py3study
发布于 2020-01-09 06:35:11
发布于 2020-01-09 06:35:11
1.8K00
代码可运行
举报
文章被收录于专栏:python3python3
运行总次数:0
代码可运行

一、CSV文件读写

1、读取

1.1基于python csv库

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#3.读取csv至字典x,y
import csv

# 读取csv至字典
csvFile = open(r'G:\训练小样本.csv', "r")
reader = csv.reader(csvFile)
#print(reader)

# 建立空字典
result = {}

i=0
for item in reader:
    if reader.line_num==1:
        continue
    result[i]=item
    i=i+1

 # 建立空字典   
j=0
xx={}
yy={}
for i in list(range(29)):
    xx[j]=result[i][1:-1]
    yy[j]=result[i][-1]
    # print(x[j])
    # print(y[j])
    j=j+1

csvFile.close()

##3.1字典转换成list
X=[]
Y=[]
for i in xx.values():
    X.append(i)

for j in xx.values():
    X.append(j)    

改进的CSV读取,直接从CSV文件读取到 list:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#加载数据  
def loadCSV(filename):  
    dataSet=[]  
    with open(filename,'r') as file:  
        csvReader=csv.reader(file)  
        for line in csvReader:  
            dataSet.append(line)  
    return dataSet  
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
读取的方式,是一行一行读取。

1.2 pandas读取

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd
test_df = pd.read_csv(r'G:\test_linearRegression.csv',  sep = '\t', header = None)

2、写入

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import csv

#程序三
with open(r'G:\0pythonstudy\chengxu\test.csv','w',newline='') as myFile:      
    myWriter=csv.writer(myFile)  
    myWriter.writerow([7,'g'])  
    myWriter.writerow([8,'h'])  
    myList=[[1,2,3],[4,5,6]]  
    myWriter.writerows(myList)  
    
# myFile.close()

with open(r'G:\0pythonstudy\chengxu\test.csv',"r") as data:
    result=csv.reader(data)
    for item in result:
        print(item)

写入,如果纯用 open(r’G:\0pythonstudy\chengxu\test.csv’,‘w’),就会出现多出一空行。

二、Excel文件处理

1、读取

方法一:

使用Python的 xlrd包。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#1、导入模块

import xlrd

#2、打开Excel文件读取数据

data = xlrd.open_workbook('test_data.xlsx')
# print('data',data)

#3、使用技巧

#获取一个工作表
table = data.sheets()[0]          #通过索引顺序获取
# print('table',table)
print(table.nrows)#table 行数
print(table.ncols)
table = data.sheet_by_index(0) #通过索引顺序获取
# print('table',table)
table = data.sheet_by_name(u'Sheet1')#通过名称获取
 
# 获取整行和整列的值(数组)

i=1
print(table.row_values(i))#获得第i行数据

print(table.col_values(i))#获得第i列数据

运行结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
9
2
[2.0, 6.0]
[5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0]

方法二:

或者,可以把Excel文件转换成csv格式文件,直接修改后缀名,好像会出错,还是建议另存为修改成csv文件。


方法三: 使用pandas包

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd
test_df = pd.read_excel(r'G:\test.xlsx')

pandas 读取为dataframe格式,其中dataframe.valuesnparray格式,nparray.tolist()python list 格式。

注意:pandas和 xlrd的区别在于,pandas会把第一行和第一列作为索引的表头;xlrd则会把所有的数据都读取,没有索引表头一说。

三、dat文件处理

直接读取

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
c = np.fromfile('test2.dat', dtype=int)

或者,把 .dat 文件修改成 .txt格式文件。

这里可以参考 python批量更改文件后缀名 一文。

四、txt文件处理

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
a = numpy.loadtxt('odom.txt') 
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
a [[  2.49870000e-01
    2.50250000e-01
 [  3.64260000e+03
    3.72430000e+03
 [  4.53960000e+03
    4.50590000e+03
 ...,
 [  4.74110000e+01
    4.89660000e+01
 [  4.10930000e+01
    4.20480000e+01
 [  1.83510000e+01
    1.68250000e+01
a.shape (52, 500)

Reference:

  1. Python csv模块;
  2. python_xlrd对Excel处理;
  3. python : 将txt文件中的数据读为numpy数组或列表;
  4. pandas read_csv API官网;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/09/07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python模块之csv的使用
CSV (Comma Separated Values),即逗号分隔值(也称字符分隔值,因为分隔符可以不是逗号),是一种常用的文本
菲宇
2019/06/13
1.1K0
Python模块之csv的使用
Python数据持久化-csv、excel篇
2018年7月4日笔记 学习目标: 1.会使用Python第三方模块操作CSV文件 2.会使用Python第三方模块操作EXCEL文件
潇洒坤
2018/09/10
1.2K0
Python数据持久化-csv、excel篇
一文学会用Python操作Excel+Word+CSV
数据处理是 Python 的一大应用场景,而 Excel 又是当前最流行的数据处理软件。因此用 Python 进行数据处理时,很容易会和 Excel 打起交道。得益于前人的辛勤劳作,Python 处理 Excel 已有很多现成的轮子,比如 xlrd & xlwt & xlutils 、 XlsxWriter 、 OpenPyXL ,而在 Windows 平台上可以直接调用 Microsoft Excel 的开放接口,这些都是比较常用的工具,还有其他一些优秀的工具这里就不一一介绍,接下来我们通过一个表格展示各工具之间的特点:
Python小二
2020/12/18
3.1K0
一文学会用Python操作Excel+Word+CSV
Python输出csv、excel表格
在机器学习应用过程中,最重要的部分之一是数据可视化。换句话,如何说服别人或者自己? 环境:python3.5
py3study
2020/01/07
4.1K0
一文综述python读写csv xml json文件各种骚操作
Python优越的灵活性和易用性使其成为最受欢迎的编程语言之一,尤其是对数据科学家而言。这在很大程度上是因为使用Python处理大型数据集是很简单的一件事情。
磐创AI
2019/07/10
3.9K0
Python基础——PyCharm版本——第八章、文件I/O(核心3、csv和excel解析)
CSV(Comma-Separated Values,中文逗号分隔值或字符分隔值)是一种通用的、相对简单的文件格式,被用户、商业和科学广泛应用,也应用于程序之间转移表格数据。
红目香薰
2022/11/29
6320
Python基础——PyCharm版本——第八章、文件I/O(核心3、csv和excel解析)
Python操作CSV格式文件
参考文档:https://docs.python.org/3.6/library/csv.html
全栈程序员站长
2022/09/16
9980
Python操作CSV格式文件
python开发_csv(Comma Separated Values)_逗号分隔值_常用导入导出格式_完整版_博主推荐
====================================================
Hongten
2018/09/13
1K0
python开发_csv(Comma Separated Values)_逗号分隔值_常用导入导出格式_完整版_博主推荐
python对csv文件的读写
首先先简单说一下csv文件,csv的全称是Comma-Separated Values,意思是逗号分隔值,通俗点说就是一组用逗号分隔的数据。CSV文件可以用excel打开,会显示如下图所示:
全栈程序员站长
2022/09/16
1K0
python对csv文件的读写
python3.x 读取csv遇到的bu
1、failed to set main.loader 兴奋地配置好了Python环境,运行hello.py实例就出现这个异常,着实让人扫兴,百度上搜了下没有找到答案。再去Google了下,发现可能是hello.py文件中包含非英文字符,果然将hello.py放到纯英文路径下就没问题了。 对于eclipse下使用PyDev的情况,可以用File->Switch Workspace的方法来切换到一个英文路径工作空间目录 2、_csv.Error: iterator should return strings
py3study
2020/01/03
9440
python csv文件数据写入和读取(适用于超大数据量)
一般情况下由于我们使用的数据量比较小,因此可以将数据一次性整体读入或者写入,而且可以一次性对数据进行加工和处理。
全栈程序员站长
2022/09/13
2.7K0
Python数据持久化-小测验
现有如下图1所示的data.csv文件数据,请使用python读取该csv文件数据,并添加一条记录后输出如图2所示的output.csv文件(10分)
潇洒坤
2018/09/10
1K0
Python数据持久化-小测验
python3.x操作csv文件的实战
python3.x集成了对csv文件的操作,直接引入包即可,但python2.x则需要单独安装。
py3study
2020/01/03
7520
Python-xlsx文件与csv文件相互转换
在2个文件之间转换,需要注意一个文件的字符转码问题。 xlsx文件转csv文件 使用xlrd和csv模块来处理Excel文件和csv文件 import xlrd import csv def xlsx_to_csv(): workbook = xlrd.open_workbook('1.xlsx') table = workbook.sheet_by_index(0) with codecs.open('1.csv', 'w', encoding='utf-8') as f:
Python研究者
2020/09/28
2.5K0
n种方式教你用python读写excel等数据文件
python处理数据文件的途径有很多种,可以操作的文件类型主要包括文本文件(csv、txt、json等)、excel文件、数据库文件、api等其他数据文件。
朱卫军 AI Python
2022/04/02
4K0
CSV文件存储
首先,打开 data.csv 文件,然后指定打开的模式为 w (即写入),获得文件句柄,随后调用 csv 库的 writer() 方法初始化写入对象,传入该句柄,然后调用 writerow() 方法传入每行的数据即可完成写入。
不可言诉的深渊
2019/07/26
5.2K0
python数据分析——详解python读取数据相关操作
一般在做数据分析时最常接触的就是逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。
刘早起
2020/04/22
3.1K0
Python的CSV模块
Python 的 CSV模块的使用方法,包括,reader, writer, DictReader, DictWriter.register_dialect
py3study
2020/01/07
1K0
Python处理CSV、JSON和XML数据的简便方法
Python的卓越灵活性和易用性使其成为最受欢迎的编程语言之一,尤其是对于数据处理和机器学习方面来说,其强大的数据处理库和算法库使得python成为入门数据科学的首选语言。在日常使用中,CSV,JSON和XML三种数据格式占据主导地位。下面我将针对三种数据格式来分享其快速处理的方法。
深度学习与Python
2019/06/18
3.3K0
python中常见关于Excel表格读写操作
最近在写项目,刚好要运用到excel表格的一些读写,顺便总结一下我以前学过的几个关于表格的操作。在写项目中,经常会见到页面中数据导出到表格中,同时,也会有经常在表格中填写测试用例,然后获取数据来做自动化测试的情况,那就我目前会的几种做一个总结吧~
小雯子打豆豆
2020/08/04
1.5K0
python中常见关于Excel表格读写操作
相关推荐
Python模块之csv的使用
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验