python 读取文本
将文本转换到NumPy 数组中,做机器学习或其他任何任务,文本处理的技能必不可少。python 实现实现了很精简强大的文本处理功能:
假设 文件 traindata.csv 中有数据 1000行,3列特征,第四列(最后一列)为类标签
1. 基本方法:
- def file2matrix():
- dataMat = []
- labelMat = []
- fr = open('./traindata.csv','rb')
fr.readline()- for line in fr.readlines(): #读取每一行
curLine = line.strip().split('\t')
lineArr = []
for i in range(3):
lineArr.append(float(curLine[i])) # 读取每个属性
dataMat.append(lineArr)
labelMat.append(float(curLine[3]))
return dataMat,labelMat
2. 使用csv模块
- import csv
- def file2Matrix():
- fr = open('./traindata','rb')
- lines = csv.reader(fr)
- lines.next() // 忽略第一行
- for line in lines:
- ....
3. 使用pandas 模块
- import pandas as pd
- def file2Matrix():
- fr = open('./traindata.csv','rb')
- df = pd.read_csv(fr,header=0)
- dataMat = df[['feature1','feature2','feature3']]
- labelMat = df['label']
- return dataMat,labelMat
很明显,如果熟练掌纹pandas 将会很简单,so easy.
纸上得来终觉浅,绝知此事要躬行....
just do it!
python 读取文本的更多相关文章
- Python读取文本,输出指定中文(字符串)
因业务需求,需要提取文本中带有检查字样的每一行. 样本如下: 1 投入10kVB.C母分段820闭锁备自投压板 2 退出10kVB.C母分段820备投跳803压板 3 退出10kVB.C母分段820备 ...
- python读取文本txt文件乱码问题
python2的编码实在是个头疼的问题,编码问题也将作为一个长期的话题,遇到问题随时补充. 这次的问题比较简单,是在做词云wordcloud的时候发现的,作用就是从文本文件中读取文字,将其制作成词云. ...
- 使用python读取文本中结构化数据
需求 read some .txt file in dir and find min and max num in file. solution: echo *.txt > file.name ...
- python读取文本数据某一列
import codecs f = codecs.open('test1 - 副本.txt', mode='r', encoding='utf-8') # 打开txt文件,以'utf-8'编码读取 l ...
- python读取文本、配对、插入数据脚本
#在工作中遇见了一个处理数据的问题,纠结了很久,写下记录一下.#-*- coding:UTF-8 -*- #-*- author:ytxu -*- import codecs, os, sys, pl ...
- Python 读取Excel之xlrd篇
上一期给大家分享了如何用Python读取文本,这次给大家分享如何读取Excel表格内容,拿最常见的.xlsx和.xls格式来讲解. 本章主要知识点有: 读取整篇excel返回list[list[lis ...
- Python读取文件基本方法
在日常开发过程中,经常遇到需要读取配置文件,这边就涉及到一个文本读取的方法. 这篇文章主要以Python读取文本的基础方法为本,添加读取整篇文本返回字符串,读取键值对返回字典,以及读取各个项返回列表的 ...
- python读取指定字节长度的文本
软件版本 Python 2.7.13; Win 10 场景描述 1.使用python读取指定长度的文本: 2.使用python读取某一范围内的文本. Python代码 test.txt文本内包含的 ...
- python逐行读取文本
一.使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. 二.需要导入import os 三.下面是逐行读取文件内容的三种方法: ...
随机推荐
- MicroSoft Visual C++ 6.0怎么建立C++文件工程?
1.打开VC6.02.选择菜单中的"文件"->"新建",弹出"新建"对话框3.在"新建"对话框中选择四个Sheet ...
- Java 编程实践
创建一个54个元素的整数数组,并将其元素值依次赋值为:1~54,用于表示一副牌的54张.再创建一个12个元素的整数数组,用于表示某玩家手中的牌,然后从前一数组中随机抽取12个元素赋值给该数组.打印后一 ...
- windows知识点
https://technet.microsoft.com/zh-cn/windows/dd641430 win7相关资源 23. Remtoe FX是微软WIN2008 R2的SP1新功能首先您需 ...
- javascript 浮点运算
<script type="text/javascript"> // 两个浮点数求和 function accAdd(num1,num2){ var r1,r2,m; ...
- 【转】第5篇:Xilium CefGlue 关于 CLR Object 与 JS 交互类库封装报告:自动注册JS脚本+委托回调方法分析
作者: 牛A与牛C之间 时间: 2013-11-19 分类: 技术文章 | 暂无评论 | 编辑文章 主页 » 技术文章 » 第5篇:Xilium CefGlue 关于 CLR Object 与 JS ...
- 更简单的跨域解决方案 - CORS
跨域问题是前端开发经常遇到的了,大家可能常用的就是JSONP了, JSONP非常方便,只要前后端约定好一个方法名,就可以沟通了,但JSONP也有一定的局限,JSONP只支持GET请求,还有当你想提供一 ...
- linux中常用目录的作用
/bin 存放使用者最长用的命令,如:cp.ls.cat,等等. /boot 启动linux时使用的一些核心文件. /dev 是device(设备)的缩写,这个目录下是所有linux的外围设备. D ...
- Android内核剖析读书笔记
第16章 程序包管理 PackageManagerService類 PmS 目錄 16.1 包管理概述 16.2 packages.xml文件格式 16.3 包管理服務的啟動過程 16.4 應用程序的 ...
- [navicat] Navicat for Oracle Cannot load OCI DLL
1. 本地安装的是64位的Oracle,但由于Navicat仅支持32位的,因此我们还需下载一个32位的客户端. 2.
- 项目ppt演讲与阶段性总结
☆车老师讲解PPT项目: 1.汉企0410天启网络公司 2.Ppt--画龙点睛 3.项目制作背景-->点到人心上,别一堆文字,别虚,点出1234 4.说话量化.具象化:明天下午5.00做完,做不 ...