Python中用Pandas進行數(shù)據(jù)分析,最常用的就是Dataframe數(shù)據(jù)結(jié)構(gòu),之前寫過一篇文章介紹Pandas的基本用法,后來有些朋友問Pandas怎么從數(shù)據(jù)庫中讀取數(shù)據(jù),怎么從文件中讀取數(shù)據(jù)之類的問題,因此單獨開篇文章介紹Pandas如何讀取數(shù)據(jù)到Dataframe。
1. Pandas讀取Mysql數(shù)據(jù)
要讀取Mysql中的數(shù)據(jù),首先要安裝Mysqldb包。假設(shè)我數(shù)據(jù)庫安裝在本地,用戶名位myusername,密碼為mypassword,要讀取mydb數(shù)據(jù)庫中的數(shù)據(jù),那么對應的代碼如下:
1 2 3 4 5 | import pandas as pd import MySQLdb mysql_cn = MySQLdb.connect(host = 'localhost' , port = 3306 ,user = 'myusername' , passwd = 'mypassword' , db = 'mydb' ) df = pd.read_sql( 'select * from test;' , con = mysql_cn) mysql_cn.close() |
上面的代碼讀取了test表中所有的數(shù)據(jù)到df中,而df的數(shù)據(jù)結(jié)構(gòu)為Dataframe。
2. Pandas讀取csv文件數(shù)據(jù)
Pandas讀取csv文件中的數(shù)據(jù)要簡單的多,不用額外安裝程序包,假設(shè)我們要讀取test.csv中的數(shù)據(jù), 對應的代碼如下:
1 | df = pd.read_csv(loggerfile, header = None , sep = ',' ) |
header=None表示沒有頭部,sep=’,’表示字段之間的分隔符為逗號。