程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

【Pandas基礎】在線文件和剪貼板數據讀取

編輯:Python

今天給大家介紹Pandas中兩種少用的數據讀取文件方式:

- 讀取在線文件的數據

- 讀取剪貼板的數據

聲明:本文案例和在線數據僅用於學術分享

read_html

該函數表示的是直接讀取在線的html文件,一般是表格的形式;將HTML的表格轉換為DataFrame的一種快速方便的方法。

這個方法對於快速合並來自不同網頁上的表格非常有用,就省去了爬取數據再來讀取的時間。

具體函數的參數為:

pandas.read_html(io,  # 文件 io 對象;路徑或者io.Strings對象
                 match='.+',  # str 或編譯的正則表達式,可選
                 flavor=None, # 要使用的解析引擎, None是默認值
                 header=None,  # 文件表頭
                 index_col=None,  # 索引
                 skiprows=None,  # 跳過行
                 attrs=None,   # 屬性
                 parse_dates=False,   # 日期解析
                 thousands=',',   # 千分位
                 encoding=None,   # 編碼
                 decimal='.',   # 識別為小數點的字符
                 converters=None,   # 屬性轉換
                 na_values=None,  #  空值信息
                 keep_default_na=True,   # 是否保持空值
                 displayed_only=True  # 是否應該解析帶有“display:none” 的元素
                )

在線文件1

讀取維基百科上一份歷屆奧運會乒乓球冠軍的相關數據。該地址下的部分表格形式的數據:

In [3]:

url = "https://zh.m.wikipedia.org/zh/%E5%A5%A5%E6%9E%97%E5%8C%B9%E5%85%8B%E8%BF%90%E5%8A%A8%E4%BC%9A%E4%B9%92%E4%B9%93%E7%90%83%E5%A5%96%E7%89%8C%E5%BE%97%E4%B8%BB%E5%88%97%E8%A1%A8"
df = pd.read_html(url)
df

Out[3]:

我們觀察到此時讀取到的df是一個列表,總長度是15

list

In [4]:

len(df)

Out[4]:

9

查看列表中的部分元素:此時就是一個個的DataFrame形式的數據

在線文件2

一個國外網站下的數據:https://www.fdic.gov/resources/resolutions/bank-failures/failed-bank-list/

In [7]:

df1 = pd.read_html("https://www.fdic.gov/resources/resolutions/bank-failures/failed-bank-list")
type(df1)

Out[7]:

list

In [8]:

len(df1)

Out[8]:

1

In [9]:

df1[0]

Out[9]:

讀取在線CSV文件

以讀取GitHub上一個CSV文件為例:

方式1:直接讀取

url="https://raw.githubusercontent.com/cs109/2014_data/master/countries.csv"
pd.read_csv(url)

方式2:通過io.Strings對象

url="https://raw.githubusercontent.com/cs109/2014_data/master/countries.csv"
response=requests.get(url).content  # 先發請求
df2 = pd.read_csv(io.StringIO(response.decode('utf-8')))
 
df2  # 效果同上

Pandas讀取剪貼板

pandas.read_clipboard(sep='\\s+', **kwargs)

官網地址:https://pandas.pydata.org/docs/reference/api/pandas.read_clipboard.html

一個簡單的例子說明函數使用:假設本地目錄下有這樣Excel表格的數據

1、先剪貼數據:【Ctrl + C】

2、運行代碼下面的代碼,按下MacOS中的【向上的箭頭】 + 【回車鍵】,完成讀取

Windows下面應該是【Shift + Enter】

如果數據比較少,省去了通過Excel或者CSV文件的讀取方式的時間:

END -

對比Excel系列圖書累積銷量達15w冊,讓你輕松掌握數據分析技能,可以點擊下方鏈接進行了解選購:

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved