Python 和 Excel 在一塊兒了

不少開發者說自從有了 Python/Pandas,Excel 都不怎麼用了,用它來處理與可視化表格很是快速。可是這樣仍是有一大缺陷,操做不是可視化的表格,所以對技能要求更高一點。近日,開發者構建了名爲 Grid studio 的開源項目,它是一個基於網頁的表格應用,徹底結合了 Python 和 Excel 的優點。git

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

是的,在一個界面上同時展現可視化表格與代碼,並且同時經過表格與代碼修改數據,這不就是 Python 與 Excel 的結合嗎?github

項目地址:https://github.com/ricklamers/gridstudio編程

咱們先看看 Grid studio 的效果究竟是什麼樣的。整體而言,咱們既能夠經過 Python 加載和處理數據,也能經過「Excel」操做數據。數組

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

在 Python 上處理數據比較好理解,表格上處理數據其實很是像 Excel,以下所示爲寫一個求和公式。瀏覽器

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

也許咱們在表格上改了些數據,那麼咱們也能導入到 NumPy 數組,並作進一步的運算。編程語言

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

爲何要建立這個工具?ide

做者表示,他建立 Grid studio 主要是用來解決數據科學項目中工做流分散的問題,在這種項目中,他要在 R studio、Excel 等多個工具之間換來換去。函數

在爲 gazillionth-time 導出 CSV 文件時,若是行數太高,應用程序窗口就會卡頓。即便是作一些簡單的事情,好比讀取 JSON 文件,也能把人逼瘋。現有的工具沒法提供高效工做所需的環境和相關工做流,這也是做者決定構建該工具的緣由。他想要建立一個易用的應用程序,能夠把數據科學工做流整合進去。工具

這個工具備何亮點?性能

Grid studio 是一個基於網頁的應用,看起來和 Google Sheets、Microsoft Excel 差很少。然而,它的殺手鐗是整合了 Python 語言。

幾乎全部使用過計算機的人都會很天然地使用表格來查看和編輯數據。將這個簡單的 UI 與 Python 這種成熟的編程語言結合起來簡直不要太好用。

用 Python 編寫腳本很是簡單:只需編寫幾行代碼直接運行便可。

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

核心集成:讀、寫

這一 Python 集成的核心是對電子表格的讀寫接口,它能夠在電子表格的數據和 Python 進程中的數據之間創建一個高性能的鏈接。

能夠用如下方式在表格中寫入數據:

sheet("A1:A3", [1, 2, 3])

用如下這種方式從表格中讀取數據:

my_matrix = sheet("A1:A3")

你能夠經過這種簡單而高效的方式直接在表格中讀取或寫入數據,以自動化數據輸入、提取、可視化等過程。

編寫定製化表格函數

雖然經過一個簡單的接口完成讀寫很是靈活,但有時編寫能夠直接調出的定製化函數也很重要。

除了 AVERAGE、SUM、IF 這些默認函數外,你可能還須要其餘函數,那麼寫出來就行了!

def UPPERCASE(a):
    return str(a).uppercase()

寫完這行代碼後,在表格中調出該函數,就像調用常規函數同樣。

利用 Python 生態

經過利用 Python 生態中各類強大的軟件包,咱們能當即訪問到當前最優的數據科學工具,所以也能快速訪問到強大的模型,例如線性迴歸和支持向量機等。

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

由於自己 Grid studio 主要就是處理表格數據,那麼將它們做爲特徵能夠快速調用 SVM 等模型,從而探索隱藏在這些數據背後的特徵。

數據可視化

在數據科學中,很常見的一個任務就是可視化數據,這樣才能得到關於數據的「先驗知識」。經過集成交互式繪圖庫 Plotly.js 和 Python 標準可視化庫 Matplotlib,Grid studio 目前已經內置了高級繪圖功能。以下所示咱們能夠在向量表格格式上使用高級繪圖功能:

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

爲了進一步解釋如何使用 Grid studio 的特徵以構建可視化圖標,項目做者還展現了兩個案例,即爬取網頁與可視化數據分佈,但這裏主要展現第一個案例。

案例:估計正態分佈

以下案例展現了 Grid studio 的強大功能,它會以更高的保真度經過 Plotly.js 可視化正態分佈,咱們能夠看看交互式製圖究竟是如何完成的。

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

使用安裝

前面介紹了這麼多特性,那麼咱們到底該怎麼用呢?Grid studio 的安裝和使用都很是簡單,經過簡單的命令行就能搞定。

  • git clone https://github.com/ricklamers/gridstudio

  • cd gridstudio && ./run.sh

如上經過下載項目、運行安裝腳本兩步,咱們就能在瀏覽器中打開本地端口,而後就能愉快地使用了。

-END-

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=
相關文章
相關標籤/搜索