1. 程式人生 > >python之pandas資料匯入

python之pandas資料匯入

pandas資料匯入

學習python最好的學習方法就是帶著自己的工作需求或者目標去學習。pandas庫不多介紹,先放一些最基礎的內容幫助學習。

pandas匯入/匯出資料是非常方便的,可以快速的匯入現在常見的excel、csv、txt,以下就是一些常用的

匯入資料:

  • pd.read_csv(filename):從CSV檔案匯入資料
  • pd.read_table(filename):從限定分隔符的文字檔案匯入資料
  • pd.read_excel(filename):從Excel檔案匯入資料
  • pd.read_sql(query, connection_object):從SQL表/庫匯入資料
  • pd.read_json(json_string):從JSON格式的字串匯入資料
  • pd.read_html(url):解析URL、字串或者HTML檔案,抽取其中的tables表格
  • pd.read_clipboard():從你的貼上板獲取內容,並傳給read_table()
  • pd.DataFrame(dict):從字典物件匯入資料,Key是列名,Value是資料

匯出資料:

  • df.to_csv(filename):匯出資料到CSV檔案
  • df.to_excel(filename):匯出資料到Excel檔案
  • df.to_sql(table_name, connection_object):匯出資料到SQL表
  • df.to_json(filename):以Json格式匯出資料到文字檔案

匯入匯出引數說明:

pd.read_excel(io, sheetname=0, header=0, skiprows=None, skip_footer=0, index_col=None, names=None, parse_cols=None, parse_dates=False, date_parser=None, na_values=None, thousands=None, convert_float=True, has_index_names=None, converters=None, dtype=None, true_values=None, false_values=None, engine=None, squeeze=False, **kwds)

io:資料來源地址例如:pd.read_excel(r'C:\Users\Desktop\新建工作表.xlsx')  注意:中文路徑的話建議用n=open(r'C:\中文路徑\excel.xlsx') 再用data=pd.read_excel(n)

sheetname:你需要匯入的資料在工作簿的那張表,可以為資料也可以為直接取表名。0代表工作簿第一張表,如表名叫name,那麼sheet_name='name'進行取數

header :你匯入資料的表頭欄位名在哪一行,預設為第一行。也可以手動指定行數來確定表頭欄位名

index_col:指定索引位置,列(0索引)用作DataFrame的行標籤。如果沒有這樣的列,則通過None。如果傳遞了一個列表,那麼這些列將合併為一個MultiIndex

dtype :匯入指定資料列的資料型別,例如:dtype= {'column_name' : str} 

常用的匯入資料舉例:

# -*- coding: utf-8 -*-
"""
@author: huangjunwen
"""
import pandas as pd
#匯入xlsx格式的資料檔案
data=pd.read_excel(r'C:\Users\Desktop\excel表格.xlsx',sheetname='Sheet1')

#匯入csv格式的資料檔案
data=pd.read_csv(r'C:\Users\Desktop\CSV表格.csv',sheetname='Sheet1')

#匯入txt格式的資料檔案,可能會涉及編碼問題或者中文路徑需要先用open函式開啟連線,並進行轉碼
op=open(r'C:\Users\Desktop\TXT資料.txt',encoding='utf-8')
data=pd.read_table(op)

#匯入sql查詢結果,需要涉及另外一個庫pymysql(因本人用的mysql資料庫所以使用該庫進行連線)
import pandas as pd
import pymysql as mysql
sql_cmd='select * from XXXX'#輸入你的SQL語句
connection=mysql.connect(host='資料庫IP',port=資料庫埠,user='登入賬戶',password='登入密碼',db='具體連線的庫',charset='utf8')#建立資料庫連結屬性
data=pd.read_sql(sql=sql_cmd,con=connection)#匯入資料庫查結果為DataFrame