您好,登錄后才能下訂單哦!
本篇內容主要講解“Python Pandas pandas.read_sql函數的用法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python Pandas pandas.read_sql函數的用法”吧!
Pandas是基于NumPy 的一種工具,該工具是為了解決數據分析任務而創建的。Pandas 納入了大量庫和一些標準的數據模型,提供了高效地操作大型數據集所需的工具。Pandas提供了大量能使我們快速便捷地處理數據的函數和方法。你很快就會發現,它是使Python成為強大而高效的數據分析環境的重要因素之一。本文主要介紹一下Pandas中read_sql方法的使用。
pandas.read_sql(sql,con,index_col = None,coerce_float = True,params = None,parse_dates = None,columns = None,chunksize = None)
將SQL查詢或數據庫表讀入DataFrame。
此功能是一個方便的包裝read_sql_table和 read_sql_query(為了向后兼容)。它將根據提供的輸入委托給特定的功能。SQL查詢將被路由到read_sql_query,而數據庫表名將被路由到read_sql_table。請注意,委托的功能可能有更多關于其功能的特定說明,此處未列出。
參數: | sql:string或SQLAlchemy可選(選擇或文本對象) 要執行的SQL查詢或表名。 con:SQLAlchemy可連接(引擎/連接)或數據庫字符串URI 或DBAPI2連接(回退模式) 使用SQLAlchemy可以使用該庫支持的任何數據庫。如果是DBAPI2對象, 則僅支持sqlite3。 index_col:字符串或字符串列表,可選,默認值:無 要設置為索引的列(MultiIndex)。 coerce_float:boolean,默認為True 嘗試將非字符串,非數字對象(如decimal.Decimal)的值轉換為浮點, 這對SQL結果集很有用。 params:list,tuple或dict,optional,default:None 要傳遞給執行方法的參數列表。用于傳遞參數的語法取決于數據庫驅動程序。 檢查數據庫驅動程序文檔, 了解PEP 249的paramstyle中描述的五種語法樣式中的哪一種。 例如,對于psycopg2,使用%(name)s,所以使用params = {'name':'value'} parse_dates:list或dict,默認值:None 要解析為日期的列名的列表。 的字典,其中格式字符串是在解析的情況下的strftime兼容的字符串倍, 或是在解析整數時間戳的情況下(d,S,NS,MS,我們)之一。{column_name: format string} dict of ,其中arg dict對應于關鍵字參數,特別適用于沒有本機Datetime支持的數據庫, 例如SQLite。{column_name: arg dict}pandas.to_datetime() columns:list,默認值:None 從SQL表中選擇的列名列表(僅在讀取表時使用)。 chunksize:int,默認無 如果指定,則返回一個迭代器,其中chunksize是要包含在每個塊中的行數。 |
返回: | DataFrame(數據幀) |
例如
import MySQLdb mysql_cn= MySQLdb.connect(host='myhost', port=3306,user='myusername', passwd='mypassword', db='information_schema') df_mysql = pd.read_sql('select * from VIEWS;', con=mysql_cn) print 'loaded dataframe from MySQL. records:', len(df_mysql) mysql_cn.close()
內容擴展:
有沒有關于如何使用Pandas中的SQL查詢傳遞參數的示例?
特別是我正在使用SQLAlchemy引擎來連接到PostgreSQL數據庫。到目前為止,我發現以下工作:
df = psql.read_sql(('select "Timestamp","Value" from "MyTable" ' 'where "Timestamp" BETWEEN %s AND %s'), db,params=[datetime(2014,6,24,16,0),datetime(2014,6,24,17,0)], index_col=['Timestamp'])
pandas文檔說,params也可以作為一個dict來傳遞,但我似乎無法讓這個工作嘗試了:
df = psql.read_sql(('select "Timestamp","Value" from "MyTable" ' 'where "Timestamp" BETWEEN :dstart AND :dfinish'), db,params={"dstart":datetime(2014,6,24,16,0),"dfinish":datetime(2014,6,24,17,0)}, index_col=['Timestamp'])
到此,相信大家對“Python Pandas pandas.read_sql函數的用法”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。