数据科学——读取数据的若干方式

数据来源

数据来源一般有五种:

  • 数据文件:以数字或文本形式存储的结构化的数据记录
  • 数据库:按照数据结构组织存储和管理数据的一个库,分为关系型数据库和非关系型数据库
  • API:应用程序接口, 分为服务型API和数据型API,我们希望使用的是数据型API——通过特定语法,通过向服务器发送特定请求,返回特定格式的数据(或数据文件),一般返回的格式有JSON XML等
  • 流式数据:应用于时效性较强的场景,一般分为用户行为数据流和机器数据流
  • 外部公开数据:公开的任意第三方都能获取的数据

python读取数据的方法

我们知道数据科学研究中我们最常用的工具就是python,所以这里讲解一下一些读取数据的方法——下面使用jupyter notebook进行数据读取的小实验

从文本文件中读取运营数据

使用python自带的read,readline, readlines进行读取

  1. 打开文件的基本语法:
file = open('输入文件所在的路径', [, mode], [, buffering])

例子:file = open('data.txt', [, r+])

后面的模式跟C语言中的读写模式一样,常用的读写模式有:

  • r :只读, 文件指针位于文件开头,默认的模式(不设置时默认为r)
  • r+ :打开一个文件用于读写
  • w :打开一个文件只用于写入, 若该文件存在则覆盖其内容,不存在则创建一个新文件
  • w+ :打开一个文件用于读写,存在则覆盖原来内容,不存在则创建新文件
  • a :打开一个文件用于追加内容, 存在时,文件指针放于文件结尾,新写入的数据会追加在原有数据的结尾, 不存在则创建文件进行写入
  • a+ :打开一个文件用于读写,其他功能与a类似

  1. 三种python自带的文件读取方法:
  • read :读取全部数据,所有行合并为一个字符串
  • readline :读取文件中的一行数据, 该行数据为一个字符串
  • readlines :读取全部数据, 返回一个列表,每一行都是该列表中的一个对象
  1. 文件的关闭

我们可以使用with来完成打开和关闭:

with open('data.txt') as fn:
	content = fn.read()

读取完毕后会自动关闭文件

理论上,python可以读取任意类型的数据文件, 但这里常常读取格式化的文本数据文件为主, 一般是.txt .csv .tsv为扩展名的文件


使用numpy读取数据

大致有三种方法:

  • loadtxt : 从txt文件中读取数据
  • load :读取numpy专用的二进制数据文件 .npy文件等
  • fromfile :读取简单的文本文件数据以及二进制数据

这里展示了前面两个的用法:
在这里插入图片描述


使用pandas读取数据

常用方法:

  • read_csv : 读取csv文件
  • read_fwf : 读取表格或固定宽度格式的文本行到数据框
  • read_table :读取通用分隔符的数据文件到数据框
  • read_clipboard :从剪贴板中读取数据
  • read_excel
  • read_html
  • read_json
  • read_sql

剩下的读取方法从方法名字就知道他们是读取哪类数据的

读取excel数据

可以看到我们可以使用pandas的read_excel来获取,我们也可以使用另一个专门读取excel的包来读取,比如:xlrd xlwt pyexcel-xls xluntils pyExcel-erator等,这里使用xlrd作为例子

Anaconda中内置了两个模块:xlrd xlwt

import xlrd
xlsx = xlrd.open_workbook('file_name.xlsx')
print(xlsx.sheet_names)

这里展示了一些探索数据的方法
在这里插入图片描述


读取非结构化网页、文本、图像、视频、语音

从网页中获取数据

可以使用urllib urllib2 requests等库,具体可以看我爬虫的系列文章:

使用requests获取网页数据

读取非结构化文本数据

在这里插入图片描述

读取图像数据

  1. 使用pillow来读取图片

在这里插入图片描述
2. 使用opencv读取图像
在这里插入图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

国家一级假勤奋研究牲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值