Pandas读取MySQL数据到DataFrame的方法

方法一:

#-*- coding:utf-8 -*-

from sqlalchemy import create_engine

class mysql_engine():
 user='******'
 passwd='******'
 host='******'
 port = '******'
 db_name='******'
 engine = create_engine('mysql://{0}:{1}@{2}:{3}/{4}?charset=utf8'.format(user,passwd,host,port,db_name))

def get_data(sql):
 pg_enine=mysql_engine()
 try:
  with pg_enine.engine.connect() as con, con.begin():
   df=pd.read_sql(sql,con)# 获取数据
  con.close()
 except:
  df=None
 return df

方法二:

conn = MySQLdb.connect(host="******",user="******",passwd="******",db='******',port = ******,charset="utf8")
sql = "select * from ****** limit 3"
df = pd.read_sql(sql,conn,index_col="id")
print df

pd 1.9以后的版本,除了sqllite,均需要通过sqlalchemy来设置

以上这篇Pandas读取MySQL数据到DataFrame的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

时间: 2018-07-22

pandas DataFrame实现几列数据合并成为新的一列方法

问题描述 我有一个用于模型训练的DataFrame如下图所示: 其中的country.province.city.county四列其实是位置信息的不同层级,应该合成一列用于模型训练 方法: parent_teacher_data['address'] = parent_teacher_data['country']+parent_teacher_data['province']+parent_teacher_data['city']+parent_teacher_data['county'] 就

Pandas:Series和DataFrame删除指定轴上数据的方法

如下所示: import numpy as np import pandas as pd from pandas import Series,DataFrame 一.drop方法:产生新对象 1.Series o = Series([1,3,4,7],index=['d','c','b','a']) print(o.drop(['d','b'])) c 3 a 7 dtype: int64 2.DataFrame data = {'水果':['苹果','梨','草莓'], '数量':[3,2,5

pandas系列之DataFrame 行列数据筛选实例

一.对DataFrame的认知 DataFrame的本质是行(index)列(column)索引+多列数据. 为了简化理解,我们不妨换个思路- 现实中,为了简化对一件事物的描述,我们会选择几个特征. 例如,从(性别.身高.学历.职业.爱好..)等角度去刻画一个人,这些"角度"即为"特征". 其中,不同的行表示不同的记录:列代表特征,不同记录因各个特征之间的差异而不同. DataFrame默认索引是序号(0,1,2-),可以理解成位置索引.一般我们用id标识不同记录,

Pandas DataFrame数据的更改、插入新增的列和行的方法

一.更改DataFrame的某些值 1.更改DataFrame中的数据,原理是将这部分数据提取出来,重新赋值为新的数据. 2.需要注意的是,数据更改直接针对DataFrame原数据更改,操作无法撤销,如果做出更改,需要对更改条件做确认或对数据进行备份. 代码: import pandas as pd df1 = pd.DataFrame([['Snow','M',22],['Tyrion','M',32],['Sansa','F',18],['Arya','F',14]], columns=['

Pandas DataFrame 取一行数据会得到Series的方法

Pandas DataFrame 取一行数据会得到Series的方法 如题,想要取如下dataframe的一行数据,以为得到的还是dataframe lista = [1, 3, 7,4,0] listb = [3, 3, 4,4,5] listc = [3, 3, 4,4,6] df1 = pd.DataFrame({'col1':lista,'col2':listb,'colb':listc}) print(df1) print(df1.loc[0,:]) print(type(df1.lo

python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix实现

相信很多人像我一样在学习python,pandas过程中对数据的选取和修改有很大的困惑(也许是深受Matlab)的影响... 到今天终于完全搞清楚了!!! 先手工生出一个数据框吧 import numpy as np import pandas as pd df = pd.DataFrame(np.arange(0,60,2).reshape(10,3),columns=list('abc')) df 是这样子滴 那么这三种选取数据的方式该怎么选择呢? 一.当每列已有column name时,用

在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例

最近在工作中,遇到了数据合并.连接的问题,故整理如下,供需要者参考~ 一.concat:沿着一条轴,将多个对象堆叠到一起 concat方法相当于数据库中的全连接(union all),它不仅可以指定连接的方式(outer join或inner join)还可以指定按照某个轴进行连接.与数据库不同的是,它不会去重,但是可以使用drop_duplicates方法达到去重的效果. concat(objs, axis=0, join='outer', join_axes=None, ignore_ind

pandas中DataFrame数据合并连接(merge、join、concat)

pandas作者Wes McKinney 在[PYTHON FOR DATA ANALYSIS]中对pandas的方方面面都有了一个权威简明的入门级的介绍,但在实际使用过程中,我发现书中的内容还只是冰山一角.谈到pandas数据的行更新.表合并等操作,一般用到的方法有concat.join.merge.但这三种方法对于很多新手来说,都不太好分清使用的场合与用途.今天就pandas官网中关于数据合并和重述的章节做个使用方法的总结. 文中代码块主要有pandas官网教程提供. 1 concat co

python中DataFrame数据合并merge()和concat()方法详解

目录 merge() 1.常规合并 ①方法1 ②方法2 重要参数 合并方式 left right outer inner 2.多对一合并 3.多对多合并 concat() 1.相同字段的表首位相连 2.横向表合并(行对齐) 3.交叉合并 总结 merge() 1.常规合并 ①方法1 指定一个参照列,以该列为准,合并其他列. import pandas as pd df1 = pd.DataFrame({'id': ['001', '002', '003'], 'num1': [120, 101,

Pandas中DataFrame数据删除详情

目录 1.根据默认的行列索引操作 1.1行删除 1.2列删除 2.根据自定义的行列索引操作 2.1行删除 2.2列删除 本文介绍Pandas中DataFrame数据删除,主要使用drop.del方式. # drop函数的参数解释 drop( self, labels=None, # 就是要删除的行列的标签,用列表给定; axis=0, # axis是指处哪一个轴,0为行(默认),1为列; index=None, # index是指某一行或者多行 columns=None, # columns是指

DataFrame 数据合并实现(merge,join,concat)

merge merge 函数通过一个或多个键将数据集的行连接起来. 场景:针对同一个主键存在的两张包含不同特征的表,通过主键的链接,将两张表进行合并.合并之后,两张表的行数不增加,列数是两张表的列数之和. def merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), c

python pandas中DataFrame类型数据操作函数的方法

python数据分析工具pandas中DataFrame和Series作为主要的数据结构. 本文主要是介绍如何对DataFrame数据进行操作并结合一个实例测试操作函数. 1)查看DataFrame数据及属性 df_obj = DataFrame() #创建DataFrame对象 df_obj.dtypes #查看各行的数据格式 df_obj['列名'].astype(int)#转换某列的数据类型 df_obj.head() #查看前几行的数据,默认前5行 df_obj.tail() #查看后几

Pandas实现Dataframe的合并

目录 简介 使用concat 使用append 使用merge 使用join 覆盖数据 简介 Pandas提供了很多合并Series和Dataframe的强大的功能,通过这些功能可以方便的进行数据分析.本文将会详细讲解如何使用Pandas来合并Series和Dataframe. 使用concat concat是最常用的合并DF的方法,先看下concat的定义: pd.concat(objs, axis=0, join='outer', ignore_index=False, keys=None,

Python数据合并的concat函数与merge函数详解

目录 一.concat函数 1)横向堆叠与外连接 2) 纵向堆叠与内链接 二.merge()函数 1)根据行索引合并数据 2)合并重叠数据 一.concat函数 1.concat()函数可以沿着一条轴将多个对象进行堆叠,其使用方式类似数据库中的数据表合并pandas.concat(objs, axis=0, join=’outer’, join_axes=None, ignore_index=False, keys=None, levels=None, verify_integrity=Fals

numpy和pandas中数组的合并、拉直和重塑实例

合并 在numpy中合并两个array numpy中可以通过concatenate,参数axis=0表示在垂直方向上合并两个数组,等价于np.vstack:参数axis=1表示在水平方向上合并两个数组,等价于np.hstack. 垂直方向: np.concatenate([arr1,arr2],axis=0) np.vstack([arr1,arr2]) 水平方向: np.concatenate([arr1,arr2],axis=1) np.hstack([arr1,arr2]) import

对numpy和pandas中数组的合并和拆分详解

合并 numpy中 numpy中可以通过concatenate,指定参数axis=0 或者 axis=1,在纵轴和横轴上合并两个数组. import numpy as np import pandas as pd arr1=np.ones((3,5)) arr1 Out[5]: array([[ 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1.]]) arr2=np.random.randn(15).reshape(