小编Fer*_*ard的帖子

如何更新Fish Terminal的版本?(Ubuntu的)

我目前正在上,2.1.0并希望转到最新(2.5.0目前).有命令这样做吗?或者我是否需要卸载当前版本并安装新版本?这是通过apt-get完成的吗?

无法在文档或互联网上的任何地方找到这个...

我尝试从鱼下载页面下载最新的.deb文件,但是试图在Ubuntu软件中心打开它会产生"Breaks existing package'fish'"

apt-get fish

7
推荐指数
2
解决办法
3055
查看次数

PySpark是否可以在没有Spark的情况下工作?

我已经使用以下方法独立/本地(在Windows上)安装了PySpark:

pip install pyspark
Run Code Online (Sandbox Code Playgroud)

我已经可以pyspark在命令行中运行或在Jupyter Notebooks中使用它了,并且它不需要正确的Spark安装(例如,我不必执行本教程中的大多数步骤,https://medium.com / @ GalarnykMichael / install-spark-on-windows-pyspark-4498a5d8d66c)。

我遇到的大多数教程都需要“在安装PySpark之前先安装Spark”。这与我的观点有关,即PySpark基本上是Spark的包装。但也许我在这里错了-有人可以解释一下吗:

  • 这两种技术之间的确切联系是什么?
  • 为什么安装PySpark足以使其运行?它实际上在引擎盖下安装了Spark吗?如果是,在哪里?
  • 如果您仅安装PySpark,那么您会错过什么吗(例如,我找不到sbin包含启动历史记录服务器脚本的文件夹)

apache-spark pyspark

7
推荐指数
2
解决办法
1275
查看次数

从 Pyspark UDF 调用另一个自定义 Python 函数

假设你有一个文件,让我们调用它udfs.py并在其中:

def nested_f(x):
    return x + 1

def main_f(x):
    return nested_f(x) + 1
Run Code Online (Sandbox Code Playgroud)

然后,您想从main_f函数中创建一个 UDF并在数据帧上运行它:

import pyspark.sql.functions as fn
import pandas as pd

pdf = pd.DataFrame([[1], [2], [3]], columns=['x'])
df = spark.createDataFrame(pdf)

_udf = fn.udf(main_f, 'int')
df.withColumn('x1', _udf(df['x'])).show()
Run Code Online (Sandbox Code Playgroud)

如果我们在定义两个函数的同一个文件中执行此操作,则可以正常工作 ( udfs.py)。但是,尝试从不同的文件(例如main.py)执行此操作会产生错误ModuleNotFoundError: No module named ...

...
import udfs

_udf = fn.udf(udfs.main_f, 'int')
df.withColumn('x1', _udf(df['x'])).show()
Run Code Online (Sandbox Code Playgroud)

我注意到,如果我确实窝nested_f里面的main_f是这样的:

def main_f(x):
    def nested_f(x):
        return x + 1 …
Run Code Online (Sandbox Code Playgroud)

python user-defined-functions apache-spark pyspark

5
推荐指数
1
解决办法
6110
查看次数