Apache Zeppelin 中 Python 2&3解释器

配置

属性

默认

描述

zeppelin.python

python

已经安装的Python二进制文件的路径(可以是python2或python3)。如果python不在您的$ PATH中,您可以设置绝对目录(例如:/usr/bin/python)

zeppelin.python.maxResult

1000

要显示的最大数据帧数。

启用Python解释器

在笔记本中,要启用Python解释器,请单击“ 齿轮”图标,然后选择“ Python”

使用Python解释器

在段落中,使用%python选择Python解释器,然后输入所有命令。

解释器只有在已经安装了python的情况下才可以工作(解释器不带自己的python二进制文件)。

要访问帮助,请键入help()

Python环境

默认

默认情况下,PythonInterpreter将使用在zeppelin.python属性中定义的python命令来运行python进程。解释器可以使用已经安装的所有模块(带pip,easy_install ...)

Conda

Conda是一个用于python的软件包管理系统和环境管理系统。 %python.conda解释器可让您在环境之间切换。

用法

列出你的环境

%python.conda

激活环境

%python.conda activate [ENVIRONMENT_NAME]

停用

%python.conda deactivate

Docker

%python.docker 解释器允许PythonInterpreter在指定的docker容器中创建python进程。

用法

激活环境

%python.docker activate [Repository] %python.docker activate [Repository:Tag] %python.docker activate [Image Id]

停用

%python.docker deactivate

案例

# activate latest tensorflow image as a python environment %python.docker activate gcr.io/tensorflow/tensorflow:latest

使用Zeppelin动态表单 

您可以在Python代码中使用Zeppelin 动态表单

Zeppelin动态表单只能在系统中安装py4j Python库时使用。如果没有,可以安装它pip install py4j

示例:

%python ### Input form print (z.input("f1","defaultValue"))    ### Select form print (z.select("f1",[("o1","1"),("o2","2")],"2"))    ### Checkbox form print("".join(z.checkbox("f3", [("o1","1"), ("o2","2")],["1"])))

Matplotlib集成

python解释器可以使用pyplot模块自动显示matplotlib数字:

%python import matplotlib.pyplot as plt plt.plot([1, 2, 3])

这是在Zeppelin笔记本中使用matplotlib的推荐方法。默认情况下,此命令的输出将通过隐式使用%html魔术将其转换为HTML 。使用内置z.configure_mpl()方法可以实现其他配置。例如,

z.configure_mpl(width=400, height=300, fmt='svg') plt.plot([1, 2, 3])

将产生一个SVG格式的400x300图像,默认情况下通常为600x400和PNG。在将来,angular可以使用另一个可选的选项来使从一个段落直接从另一段生成的图形更新(输出将%angular代替%html)。但是,该功能在解释器中已经pyspark可用。更多细节可以在包含的“Zeppelin Tutorial:Python - matplotlib basic”教程笔记本中找到。

如果Zeppelin找不到matplotlib后端文件(通常应该在其中找到$ZEPPELIN_HOME/interpreter/lib/pythonPYTHONPATH,则后端将自动设置为agg,并且(否则不推荐使用)的说明可用于更有限的内联绘图。

如果无法加载内联后端,请使用z.show(plt)python %python import matplotlib.pyplot as plt plt.figure() (.. ..) z.show(plt) plt.close() z.show()功能可以使用可选参数来调整图形尺寸(宽度和高度)以及输出格式(png或可选的svg)。

%python z.show(plt, width='50px') z.show(plt, height='150px', fmt='svg')

Pandas整合

Apache Zeppelin 桌面显示系统 提供内置的数据可视化功能。Python解释器利用它可视化Pandas DataFrames,虽然类似的z.show()API,与Matplotlib集成一样

例:

import pandas as pd rates = pd.read_csv("bank.csv", sep=";") z.show(rates)

在Pandas DataFrames上的SQL

有一个方便的%python.sql解释器,与Zeppelin中的Apache Spark体验相匹配,可以使用SQL语言来查询Pandas DataFrames,并通过内置表格显示系统可视化结果。

预申请

  • Pandas: pip install pandas
  • PandaSQL: pip install -U pandasql

如果默认绑定解释器是Python(首先在解释器列表中,在齿轮图标下),您可以将其用作%sqlie

  • 第一段 import pandas as pd rates = pd.read_csv("bank.csv", sep=";") 
  • 下一段 %sql SELECT * FROM rates WHERE age < 40

否则可以称为 %python.sql

技术说明

有关当前实现的深入技术细节请参考python / README.md

Python解释器中尚未实现某些功能

  • 中断段落执行(cancel()方法)目前仅在Linux和MacOs中受支持。如果解释器在另一个操作系统(例如MS Windows)中运行,则中断一个段落将关闭整个解释器。打开JIRA票(ZEPPELIN-893),在下一个版本的解释器中实现此功能。
  • webUI(getProgress()方法)中的进度条目前尚未实现。
  • 代码完成目前尚未实施。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SHERlocked93的前端小站

Vue项目预渲染机制引入实践

周末想顺便把已经做好静态页面的webApp项目做一下SEO优化,由于不想写蹩脚的SSR代码,所以准备采用预渲染,本来想着网上有这么多预渲染的文章,随便找个来跟着...

252
来自专栏张戈的专栏

WordPress评论滑动/拉链解锁myQaptcha修改为自动提交的方法

自从肉牛、钢材等垃圾评论泛滥,很多朋友都用上了各种评论验证方案,其中一个比较惹眼的就是张戈博客目前在用的 myQaptcha 滑动解锁。 ? 很久之前张戈博客已...

3275
来自专栏我的博客

FCK编辑器使用详解(PHP版本)

前些日子(很久了),胡乱捣鼓了一番FCK编辑器的使用,结果还是没有捣鼓明白个所以然(今天又想起来fck的强大,我以前见到的只是它的冰山一角) 今天是按照一下过程...

2686
来自专栏极客生活

从零开始用Vue+Flask开发知乎小视频下载工具

作为一个几乎从来没做过前端开发的程序员,我近期花了一个周从零开始学习Vue的知识,做了一个知乎小视频的下载Demo,并且成功部署到线上。

571
来自专栏技术沉淀

Mac必备软件

2333
来自专栏蓝天

eclipse的thrift插件

插件网址为:http://thrift4eclipse.sourceforge.net/en/install.html,经测试对Eclipse 4.4.2也有...

993
来自专栏Django中文社区

Django Haystack 全文检索与关键词高亮

在此之前我们使用了 Django 内置的一些方法实现了一个简单的搜索功能。但这个搜索功能实在过于简单,没有多大的实用性。对于一个搜索引擎来说,至少应该能够根据用...

3257
来自专栏从零开始学自动化测试

Appium+python自动化20-查看iOS上app元素属性

前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道,appium的windows版自带的Inspector可以定位app...

3475
来自专栏CRPER折腾记

Vue 折腾记 - (11) @Vue/Cli 3.0.0 图形化项目管理,相当人性化

点击顶部tab的Create进入初始化界面, 点击Create a new project here进入新项目初始化

872
来自专栏Flutter入门到实战

开发工具总结(8)之图文并茂全面总结上百个AS好用的插件(下)

上篇文章介绍了一至七条,由于篇幅过长,这里分为上下两篇讲解,这里截取的是剩下的从第八条开始一直到结尾的那一部分。查看上篇文章请点击 开发工具总结(1)之图文并茂...

813

扫码关注云+社区