数据库版本:MySQL

Python版本:3.5

之前用想用MySQLdb来着,后来发现py3.5版本不支持,现选择pymysql

现在想将数据库adidas中的表jd_comment读取至python中的DataFrame,方便数据分析处理

大众代码如下:

import pymysql
import pandas as pd
import numpy as np try:
conn = pymysql.connect(host='localhost', user='root', passwd='', db='adidas', charset='UTF8')
cur = conn.cursor()
cur.execute('select * from jd_comment')
rows = cur.fetchall() #获取元组列表
cur.close()
conn.close()
except pymysql.Error as e:
print('Mysql Error %d: %s' %(e.args[0], e.args[1])) cols = list(zip(*cur.description)) #可以看到列名(由元组构成) #将数据库中的数据保存为DataFrame(数据必须是字典或者数组,列表也必须是list或者数组)
adidas = pd.DataFrame(np.array(rows), columns=list(cols[0]))

charset必须和之前数据库保存一致,否则中文会出现乱码

简单说2句:host指的是主机名

user用户名

       passwd密码

       db 数据库名

rows获取的是数据库中Tables的数据行,但是保存的是元组tuple,如若要构造成DataFrame,需转化为数组或者字典

        cols列表中第一个元组保存的是数据库中Tables的列名,如若要构造成DataFrame,需要转化为list或数组

详细可参考Dataframe的用法

看了上述代码感觉每次导入一个数据库好繁琐,下面给出一个精简版。代码中的try---except如不需要,也可自行删除

import pandas.io.sql as sql
import pymysql try:
conn = pymysql.connect(host='localhost', user='root', passwd='', db='adidas', charset='UTF8')
adidas = sql.read_sql('select * from jd_comment', conn)#将数据库读入dataframe
conn.close()
except pymysql.Error as e:
print('Mysql Error %d: %s' %(e.args[0], e.args[1]))

Python之数据库导入(py3.5)的更多相关文章

  1. python之数据库操作(sqlite)

    python之数据库操作(sqlite) 不像常见的客户端/服务器结构范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分.所以主要的通信协议是在编程语言内的直接A ...

  2. python操作数据库之批量导入

    python操作数据库之批量导入 Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进. Python具有丰富和强大的库.它常被昵称为胶水语言,能够把用其他语言制作的 ...

  3. python操作数据库

    一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...

  4. JAE京东云引擎Git上传管理代码教程和京东云数据库导入导出管理

    文章目录 Git管理准备工作 Git工具上传代码 发布代码装程序 mywebsql管理 京东云引擎小结   JAE京东云引擎是京东推出的支持Java.Ruby.Python.PHP.Node.js多语 ...

  5. Django: 之数据库导入、迁移和联用

    Django 数据库导入 从网上下载的一些数据,excel表格,xml文件,txt文件等有时候我们想把它导入数据库,应该如何操作呢? 以下操作符合 Django版本为 1.6 ,兼顾 Django 1 ...

  6. 使用Python管理数据库

    使用Python管理数据库   这篇文章的主题是如何使用Python语言管理数据库,简化日常运维中频繁的.重复度高的任务,为DBA们腾出更多时间来完成更重要的工作.文章本身只提供一种思路,写的不是很全 ...

  7. python sqlite3 数据库操作

    python sqlite3 数据库操作 SQLite3是python的内置模块,是一款非常小巧的嵌入式开源数据库软件. 1. 导入Python SQLite数据库模块 import sqlite3 ...

  8. Python面试数据库

    1.列举常见的关系型数据库和非关系型都有那些? 关系型 : MySQL,SQL Server ,Oracle , Sybase, DB2 非关系型 : Redis, MongodDB 2.MySQL常 ...

  9. Python操作数据库之 MySQL

    Python操作数据库之MySQL 一.安装Python-MySQLdb模块 Python-MySQLdb是一个操作数据库的模块,Python 通过它对 mysql 数据实现各种操作. 如果要源码安装 ...

随机推荐

  1. Python数据挖掘——数据预处理

    Python数据挖掘——数据预处理 数据预处理 数据质量 准确性.完整性.一致性.时效性.可信性.可解释性 数据预处理的主要任务 数据清理 数据集成 数据归约 维归约 数值归约 数据变换 规范化 数据 ...

  2. selenium--判断元素是否存在

    # coding:utf-8from selenium import webdriverfrom selenium.webdriver.support.ui import WebDriverWaitf ...

  3. “Hello World!“”团队第五周召开的第二次会议

    今天是我们团队“Hello World!”团队第五周召开的第二次会议.也祝大家双十一快乐~~博客内容: 一.会议时间 二.会议地点 三.会议成员 四.会议内容 五.todo list 六.会议照片 七 ...

  4. Week4_Linux书本一二两章

    第一章的学习内容就是对Linux内核有一个基本的了解,同时知道一些关于Linux的知识. 学习Linux,可以自己有一台装有Linux操作系统的机器,源代码的作用无可替代: Linux发展历程简介:L ...

  5. SSH新学,关于面向对象的看法

    流程:model-->dao-->service-->impService-->action 如果只是操作单个的一个表,比如user表,则都写到user的流程中 如果要操作俩个 ...

  6. IDEA + SSH OA 第一天(项目收获:Hibernate XML)

    之前都是用工具逆向生成代码,很少写配置文件,今天试着使用,有几点需要注意 Cascade(级联): Cascade代表是否执行级联操作,Inverse代表是否由己方维护关系. Cascade属性的可能 ...

  7. Strust2: 工作流程

    以下为Struts2的体系结构图: Struts2框架处理用户请求,大体分为以下几个过程: (1)用户发出一个HttpServletRequest请求 (2)请求经过一系列过滤器,最后达到Filter ...

  8. jQuery异步Deferred

    原文链接:http://www.ruanyifeng.com/blog/2011/08/a_detailed_explanation_of_jquery_deferred_object.html 普通 ...

  9. [ Selenium2 从零开始 by Bruce from http://seleniumcn.cn ] 1-8 视频集锦

    内容转自: http://blog.csdn.net/sxl0727tu/article/details/51887093\ ************************************* ...

  10. opencv 矩阵类数据的运算

    参考:http://blog.sina.com.cn/s/blog_7908e1290101i97z.htmlhttp://blog.sina.com.cn/s/blog_afe2af380101bq ...