我如何使用Python构建电子表格应用程序以简化数据科学

今天,我正在公开采购“ Grid studio ”,这是一个基于Web的电子表格应用程序,具有Python编程语言的完全集成

大约一年前,我开始尝试构建我一直想要的数据科学IDE的想法。 与Microsoft Excel,R(Studio)和Python进行了广泛的合作之后,我设想了这些集成版本将如何使我的生活更轻松。

为什么?

我着手使用Grid Studio解决的主要问题是在进行数据科学项目时,在R Studio和Excel等多种工具之间来回移动时遇到的分散的工作流程。

在导出该CSV文件达千亿次的同时 ,当我的行数太高或尝试做一些简单的事情(例如读入我已经拥有的JSON文件) 冻结了应用程序窗口 。 现有工具无法为我提供能够使我高效的环境和相关工作流程。

这就是为什么我决定构建一些将我的工作流集成到一个适合我的数据科学需求的单一,现代且易于使用的应用程序中的原因。

它是如何工作的?

Grid studio是一个基于Web的应用程序,其外观与普通的电子表格程序(例如Google表格或Microsoft Excel)非常相似。 但是,其杀手级功能是Python语言的深度集成。

对于几乎所有使用计算机的人来说,以表格结构查看数据并直接对其进行操作都是很自然的感觉。

将此简单的UI与成熟的编程语言(例如Python)的功能相结合,确实使其脱颖而出。

使用Python编写脚本尽可能简单:只需编写几行并直接执行即可。

核心集成:读写工作表

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生态系统的功能,您可以立即访问最先进的数据科学工具:

这样就可以轻松访问强大的模型,例如线性回归和用于对数据建模的SVM

Docker运行时

该应用程序运行在Docker容器中,使您可以轻松访问完全包装且隔离的UNIX环境(甚至在Windows上!),并且可以随时使用:Python,scikit-learn,numpa,pandas,terminal,wget,zip等更多。

这使Grid Studio的安装就像下载预构建的docker映像并运行单个命令一样简单。

数据可视化

数据科学中的一项常见任务是可视化数据。 鉴于其重要性,Grid Studio通过集成交互式绘图库Plotly.js和Python的标准Matplotlib内置了对高级绘图的支持。 这为您提供了矢量锐利格式的高级绘图功能。

为了给您一些有关如何使用Grid studio功能的想法,我们展示了它们如何与一些具体示例结合在一起。

示例:刮网

该示例向您展示了唾手可得的Python的强大功能。 现在,通常需要在工具和文件之间来回移动的内容现在可以集成到单个脚本中。

在上面,您将看到一个简短的脚本如何轻松地将Hacker News中的新闻文章直接加载到工作表中。

资料来源: scrape.py

示例:估计正态分布

这个例子显示了一个用Plotly.js可视化,具有更高保真度估计正态分布的愚蠢用例。 在这里,您可以看到交互式绘图如何使您了解正在发生的事情。

来源: estimate_normal.py

如何使用?

在本地安装Grid Studio非常简单:

(Make sure you have Docker installed)

1. Clone the repository with this command:

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

2. Run the bash script (on Windows use e.g. Git Bash) with this command:

cd gridstudio && ./run.sh

3. Go to http://127.0.0.1:8080 in your browser

适用于Windows的Git Bash - Docker安装

注意:如果您遇到问题,请随时在GitHub上打开问题 ,我将尝试尽快提供帮助/修复。

注意:在Linux上,您可能需要运行(对于第2步):

cd gridstudio && sudo ./run.sh

因为Docker需要sudo访问权限才能运行。

发布+未来发展

如简介中所述,今天Grid Studio将通过GitHub存储库免费提供和开源。

如果您在这里做到了,非常欢迎您自己尝试一下,并在GitHub上为该项目提交任何反馈和/或贡献。

我对将来可以添加哪些功能或特性以改进Grid studio有一些想法。 但是,由于该项目现在是开源的,所以我认为最好在GitHub上跟踪这些项目,并根据所有相关人员查看优先级最高的项目。

-扩展电子表格中可用的“本机”功能(例如AVERAGE,SUM,IF等)的数量,甚至可以与Libre Office的Calc或Excel等某些现有程序包达到奇偶性(和一致性)

-在电子表格中键入公式时的语法突出显示/功能工具提示

-电子表格中的高级排序和过滤

-使用Plotly.js进行交互式绘图的扩展控件

-更轻松地共享工作区/代码(即导出工作区)

-实时协作的形式(这可能太困难了)

-用于附件/扩展的某种API /接口

-将公式解析器升级为基于真实语法的解析器

-Python自动补全

-性能优化

-核心Python /工作表集成的鲁棒性(无字符/序列损坏)

开源动机

尽管该项目最初打算用于商业发行,但我认为,作为一个开放源代码项目,让每个人都可以尝试并可能由一个对数据感兴趣的小团体进行开发,可能会更好。

这样做的原因是,在项目的初始开发过程中,我发现了许多提供与Grid studio类似功能的项目。

首先,有一个开源插件,将Python直接集成到Microsoft Excel中,称为xlwings 。 尽管它并没有真正将电子表格和Python集成到一个统一的产品中,但是它确实提供了使用户能够访问他们已经熟悉的“真实的”完全加载的Excel环境的优势。

其次,Python从IPythonJupyter NotebooksJupyterLab 。 它享有很高的知名度,因此,它为数据科学家提供了一个非常不错的工作环境,特别强调了通过长格式笔记本进行可解释的代码。 虽然,它缺乏任何类型的电子表格功能,但我认为由于其直观的行为而吸引了新手数据科学家。

总的来说,像这样的项目意味着将Grid studio商业化意味着要与这些产品替代品竞争,这些产品替代品可以以低得难以置信的低价获得。

无论如何,我真诚地相信Grid studio确实具有与现有替代产品相比独特的功能,并且可以成为许多用例的首选工具。

Grid studio可通过GitHub存储库免费和开源。

From: https://hackernoon.com/introducing-grid-studio-a-spreadsheet-app-with-python-to-make-data-science-easier-tdup38f7

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值