這些Pandas演示tips,你一定相見恨晚……
Pandas在數(shù)據(jù)分析中的重要作用不必多言。不管是Confluence上的一篇文章、GitHub中Readme文檔,抑或一篇科學(xué)論文,每個項(xiàng)目都會以報告之類來收尾。
使用Pandas,就不必再將數(shù)據(jù)幀(DataFrame)里的值逐一復(fù)制到另一個軟件中,它的格式化函數(shù)能夠?qū)?shù)據(jù)幀轉(zhuǎn)換成多種格式。
無論是學(xué)生、數(shù)據(jù)科學(xué)家還是博士研究人員,這些技巧都一定能幫到你。
圖源:medium.com
下載Jupyter notebook,一起動動小手來試試吧!
設(shè)置
創(chuàng)建一個10行3列的數(shù)據(jù)幀,數(shù)值隨機(jī)。
- n =10
- df = pd.DataFrame(
- {
- "col1": np.random.random_sample(n),
- "col2": np.random.random_sample(n),
- "col3": [[random.randint(0,10) for _ in range(random.randint(3, 5))] for _ inrange(n)],
- }
- )
與HTML共享結(jié)果
通過使用to_html函數(shù),可以將Pandas數(shù)據(jù)幀轉(zhuǎn)換為HTML,這對于通過HTML發(fā)送自動報告十分有用。還可以在pandas分析服務(wù)器上制作API,這樣就可以在網(wǎng)頁瀏覽器的數(shù)據(jù)幀中追蹤最新數(shù)值。
注意,這需要用到lxml軟件包,可以用pip安裝lxml。
- dfdf_html =df.to_html()with open( analysis.html , w ) as f:
- f.write(df_html)
read_html函數(shù)甚至可以將HTML解析為pandas數(shù)據(jù)幀。筆者還沒有使用過通用HTML進(jìn)行嘗試,但無疑會很有用。
- df_list =pd.read_html( analysis.html )
- df_list
編寫文件
在代碼中編寫注釋時,將數(shù)據(jù)幀轉(zhuǎn)換為字符串會非常有用。
- print(df.to_string())
Excel電子表格
Excel的大佬地位毋庸置疑,而Pandas能夠?qū)?shù)據(jù)幀轉(zhuǎn)化為Excel電子表格。使用pandas,人們可以輕松閱讀Excel電子表格。
注意,需要xlwt和openpyxl軟件包,可以用pip進(jìn)行安裝。
- df.to_excel( analysis.xlsx ,index=False)
- pd.read_excel( analysis.xlsx )
Github創(chuàng)作
在存儲庫中,Github使用Markdown格式語言來編寫README和Wiki文件。一個優(yōu)秀的README文件能讓項(xiàng)目更有可能被其他人采用。雖然在GitHub上逐步進(jìn)行示范相當(dāng)普遍,但將pandas數(shù)據(jù)幀手動格式化為markdown標(biāo)記語言,會花費(fèi)大量時間。這時Pandas可就幫了我們大忙。
- print(df.to_markdown())
撰寫科學(xué)論文
大部分高質(zhì)量的研究論文都是用LaTeX——一個高質(zhì)量的排版系統(tǒng)編寫而成。許多LaTeX作者制作數(shù)據(jù)幀截圖,然后放在自己的論文中,還有許多人花了相當(dāng)多的時間將數(shù)據(jù)幀的值格式化為LaTe X表格。
圖源:unsplash
pandas中的to_latex函數(shù)可以幫助人們完成繁重的任務(wù)。來看看這個例子:
- df.to_latex()
結(jié)合使用print函數(shù),你可以得到一個格式工整的輸出結(jié)果。
- print(df.to_latex())
這些技巧幫到你了嗎?