机器学习和数据分析-pandas从数据源中导入数据
1.Text
2.CSV
3.Excel
4.Html
5.Mysql
6.Mongodb
1.启动jupyter notebook
2.创建一个新的notebook,并导入pandas
一:txt
1.read_table()读取文本格式的内容,当前目录有01.txt,内容为:
email
jack@example.com
mary@example.com
lily@example.com
tom@example.com
读取01.txt中的内容
pd.read_table("./01.txt")
运行效果图如下:
2.read_table()读取多列数据时,每列之间用tab键间隔,02.txt内容为:
name age email
jack 18 jack@example.com
mary 19 mary@example.com
lily 17 lily@example.com
tom 17 tom@example.com
joe 20 joe@example.com
读取02.txt中的内容:
pd.read_table("./02.txt")
运行效果图如下:
3.指定分隔符读取文本,且没有头,03.txt内容为:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
读取03.txt的内容:
pd.read_table('./03.txt',sep=':',header=None)
运行效果图如下:
指定每一列的名字
pd.read_table('./03.txt',sep=':',names=['name','pwd','uid','gui','local','home','shell'])
运行效果图如下:
二:CSV
说明:逗号分隔值文件格式
1.在当前目录下,有04.csv,内容为:
书名,单价
时间简史,30.9
胡诗全集,45.9
钢铁是怎样炼成的,60
读取04.csv文件内容:
pd.read_csv("./04.csv")
运行效果图如下:
备注:若运行报错,可能是编码格式问题导致,可以先将文件编码格式转化为utf8,再运行
三:Excel
1.安装xlrd模块: pip install xlrd
2.当前文件夹下面,有05.xlsx内容为:
读取Excel表格中的内容:
pd.read_excel("./05.xlsx")
运行效果图如下:
四:HTML
1.安装lxml,pip install lxml
2.当前目录下有06.html,内容为:
<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>2017年中国个城市平均工资排行榜</title>
</head>
<body><h1>2017年中国个城市平均工资排行榜</h1><table class="mydata"><tr><th>排名</th><th>城市</th><th>工资</th></tr><tr><th>1</th><th>北京</th><th>9240</th></tr><tr><th>2</th><th>上海</th><th>8962</th></tr><tr><th>3</th><th>深圳</th><th>8315</th></tr><tr><th>3</th><th>广州</th><th>7409</th></tr><tr><th>3</th><th>杭州</th><th>7330</th></tr></table><hr><table class="mydata2"><tr><td>aa</td><td>bb</td><td>cc</td></tr><tr><td>11</td><td>22</td><td>33</td></tr><tr><td>44</td><td>55</td><td>66</td></tr></table></body>
</html>
页面效果图:
读取06.html的内容:
tables = pd.read_html("./06.html",header=0)
tables
运行效果图如下:
备注:如果lxml没有生效,可以点击Kernel -> restart and Run All 重新运行notebook
3.通过索引获取两个不同的table
#1.获取第一个table
tables[0]#2.获取第二个table
tables[1]
运行效果图如下:
4.使用attr属性指定表格的类
pd.read_html("./06.html",header=0,attrs={'class':'mydata'})
运行效果图如下:
五:MySQL
1.安装pymysql
2.导入pymysql
import pymysql
3.创建连接,并读取mysql表中的内容
conn = pymysql.connect(host='localhost',user='root',password='123456',db='test',charset='utf8')
sql = 'select * from students'
data = pd.read_sql(sql,conn)
conn.close()
4.输出读取的内容
data
运行效果图如下:
六:Mongo
1.安装pymongo: pip install pymongo
2.导入import pymongo
import pymongo
3.创建连接,并查询Mongo中的数据
client = pymongo.MongoClient('localhost',27017)
db='weibo'
table='weibo'
cursor = client[db][table].find()
4.将数据保存在data中
data = pd.DataFrame(list(cursor))
5.输出数据
data
运行效果图如下:
机器学习和数据分析-pandas从数据源中导入数据相关推荐
- 从Excel中导入数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决办法...
注意,64位系统,用64位的补丁文件; https://www.cnblogs.com/A2008A/articles/2438962.html 操作系统:使用的是64位的Windows Server ...
- python批量导入mysql_用python批量向数据库(MySQL)中导入数据
用python批量向数据库(MySQL)中导入数据 现有数十万条数据,如下的经过打乱处理过的数据进行导入 数据库内部的表格的数据格式如下与下面的表格结构相同 Current database: pyt ...
- 把json数据导入linux,使用json文件给es中导入数据
使用json文件可以给es中导入数据,10万条左右的数据可以一次导入,数量太大时导入就会报错.大数量的到导入还是需要用bulk方式. accounts.json文件格式如下: {"index ...
- excel文件导入hive乱码_hive 从Excel中导入数据
拿到Excel表后将数据保留,其他的乱七八糟都删掉,然后另存为txt格式的文本,用nodepad++将文本转换为UTF-8编码,此处命名为cityprovince.txt 将cityprovince. ...
- 《项目经验》--简单三层使用DataTable向数据库表批量导入数据---向SqlServer多张张表中导入数据
前面已经介绍过如何向数据库的一张表中批量导入数据,详情见博客<项目经验---简单三层使用DataTable向数据库表批量导入数据---向SqlServer一张表中导入数据>:本文主要介绍如 ...
- 数据库-表中导入数据-insert
表中导入数据 在表中导入数据的方式有两种 第一种:将以上数据整理成SQL语句,insert into pet.... 第二种:通过加载文件的方式将数据导入到表中 1.创建一个pet.txt的文件(注: ...
- python 数据导入mysql_用python批量向数据库(MySQL)中导入数据
用python批量向数据库(MySQL)中导入数据 现有数十万条数据,如下的经过打乱处理过的数据进行导入 数据库内部的表格的数据格式如下与下面的表格结构相同Current database: pyth ...
- sqoop动态分区导入mysql,使用sqoop import从mysql往hive含分区表中导入数据的一些注意事项...
先看下面这条语句,它实现的功能是将特定日期的数据从mysql表中直接导入hive $ sqoop import \ --connect jdbc:mysql://192.168.xx.xx:3306/ ...
- [vue] 在使用计算属性的时,函数名和data数据源中的数据可以同名吗?
[vue] 在使用计算属性的时,函数名和data数据源中的数据可以同名吗? 莫名其妙的问题.可以同名,但data会覆盖methods.并且本就不该同名,同名说明你命名不规范.然后解释为什么会覆盖,因为 ...
最新文章
- Django模型层Meta内部类详解
- CSDN-屏蔽广告详细方法 仅对谷歌浏览器有效!
- python 深拷贝_Python之类的浅拷贝与深拷贝
- 在eclipse导入SSH项目
- Mips TLB miss异常
- 关于GCC Cygwin MinGW MSYS
- php加本地音乐代码,WordPress添加音乐播放器(纯代码实现)
- JS节点树的一个实例
- NOX+ Open vSwitch安装相关命令【备份】
- 虚拟机环境下Centos6.5如何上网
- [转载] 十种方式拼接Python字符串
- Java启动sparksql,spark-sql启动的时候需要制定master吗?
- c iostream.源码_通达信三线注意买入主图指标公式【源码分享】
- 车牌分割python_车牌字符分割python打开
- Java毕业设计——员工管理系统
- 【信息系统项目管理师】2018下半年系统集成项目管理工程师案例分析
- 20.4版本Ubuntu中部署LAMP环境,部署论坛discuz
- 赛门铁克完成收购Blue Coat,任命Greg Clark为CEO
- 代理服务器(Proxy)
- 有谁知道win10appdata文件夹可以删除吗,删除的方法是什么
热门文章
- 6个Excel快速操作小技巧,早会早下班
- java 金钱计算 BigDecimal
- SuperMap iMobile for Android许可介绍
- outlook设置263邮件服务器,win10系统怎么在Outlook中添加263邮箱的操作方法
- 给mysql添加主键_MySQL添加主键、索引
- jQuery之从零开始的学习(完整)
- php后台架构,架构 · FastAdmin - 基于ThinkPHP5的极速后台开发框架文档 · 看云
- 如何通过WPS将Word(doc、docx)转换为PDF格式的教程方法
- Android 快捷键生成onClick()点击事件方法
- js中的sleep、pause 实现