草庐IT

sparking

全部标签

python - 将数组传递给 Spark Lit 函数

假设我有一个包含数字1-10的numpy数组a:[12345678910]我还有一个Spark数据框,我想将我的numpy数组a添加到其中。我认为一列文字可以完成这项工作。这不起作用:df=df.withColumn("NewColumn",F.lit(a))Unsupportedliteraltypeclassjava.util.ArrayList但这行得通:df=df.withColumn("NewColumn",F.lit(a[0]))怎么做?之前的示例DF:col1abcdefghij预期结果:col1新列abcdefghij12345678910

python - 如何将 VectorAssembler 输出的特征映射回 Spark ML 中的列名?

我正在尝试在PySpark中运行线性回归,我想创建一个表,其中包含汇总统计信息,例如数据集中每一列的系数、P值和t值。但是,为了训练线性回归模型,我必须使用Spark的VectorAssembler创建一个特征向量,现在对于每一行我都有一个特征向量和目标列。当我尝试访问Spark的内置回归汇总统计信息时,他们为我提供了每个统计信息的非常原始的数字列表,并且无法知道哪个属性对应于哪个值,这很难手动找出大量的列。如何将这些值映射回列名称?例如,我的当前输出是这样的:Coefficients:[-187.807832407,-187.058926726,85.1716641376,10595

python - 导入错误 : No module named numpy on spark workers

在客户端模式下启动pyspark。bin/pyspark--masteryarn-client--num-executors60shell上的importnumpy运行良好,但在kmeans中失败。不知何故,执行者没有安装numpy是我的感觉。我没有在任何地方找到任何好的解决方案来让worker了解numpy。我尝试设置PYSPARK_PYTHON但这也不起作用。importnumpyfeatures=numpy.load(open("combined_features.npz"))features=features['arr_0']features.shapefeatures_rdd

python - 如何在同一个 Spark 项目中同时使用 Scala 和 Python?

是否可以通过管道将SparkRDD传输到Python?因为我需要一个python库来对我的数据进行一些计算,但是我的主要Spark项目是基于Scala的。有没有办法将它们混合或让python访问相同的spark上下文? 最佳答案 您确实可以使用Scala和Spark以及常规Python脚本通过管道输出到Python脚本。测试.py#!/usr/bin/pythonimportsysforlineinsys.stdin:print"hello"+linespark-shell(scala)valdata=List("john","pa

python - 如何从 Spark SQL 中的列表创建数据框?

星火版本:2.1例如,在pyspark中,我创建了一个列表test_list=[['Hello','world'],['I','am','fine']]然后如何从test_list创建数据框,其中数据框的类型如下所示:DataFrame[words:array] 最佳答案 方法是这样的frompyspark.sql.typesimport*cSchema=StructType([StructField("WordList",ArrayType(StringType()))])#noticeextrasquarebracketsaro

python - IF Then ELSE 的 Spark 等价物

我之前在这里看到过这个问题,并从中吸取了教训。但是,我不确定为什么在我认为它应该工作时会出现错误。我想根据一些规则在现有的SparkDataFrame中创建一个新列。这是我写的。iris_spark是具有三个不同类别的分类变量iris_spark的数据框。frompyspark.sqlimportfunctionsasFiris_spark_df=iris_spark.withColumn("Class",F.when(iris_spark.iris_class=='Iris-setosa',0,F.when(iris_spark.iris_class=='Iris-versicolo

python - 如何使用 Python 在 Spark 中执行两个 RDD 表的基本连接?

您将如何使用Python在Spark中执行基本连接?在R中,您可以使用merg()来执行此操作。在spark上使用python的语法是什么:内部连接左外连接交叉连接有两个表(RDD),每个表都有一个列,每个表都有一个公共(public)键。RDD(1):(key,U)RDD(2):(key,V)我认为内部联接是这样的:rdd1.join(rdd2).map(case(key,u,v)=>(key,ls++rs));是吗?我在互联网上搜索过,找不到一个很好的连接示例。提前致谢。 最佳答案 可以使用PairRDDFunctions或Sp

python - spark-submit 和 pyspark 有什么区别?

如果我启动pyspark然后运行此命令:importmy_script;spark=my_script.Sparker(sc);spark.collapse('./data/')一切正常。但是,如果我尝试通过命令行和spark-submit做同样的事情,我会得到一个错误:Command:/usr/local/spark/bin/spark-submitmy_script.pycollapse./data/File"/usr/local/spark/python/pyspark/rdd.py",line352,infuncreturnf(iterator)File"/usr/local/

java - Spark Java 错误 : Size exceeds Integer. MAX_VALUE

我正在尝试将spark用于一些简单的机器学习任务。我用pyspark和spark1.2.0做了一个简单的逻辑回归问题。我有120万条记录用于训练,我对记录的特征进行哈希处理。当我将散列特征数设置为1024时,程序运行正常,但是当我将散列特征数设置为16384时,程序多次失败并出现以下错误:Py4JJavaError:Anerroroccurredwhilecallingo84.trainLogisticRegressionModelWithSGD.:org.apache.spark.SparkException:Jobabortedduetostagefailure:Task1inst

spark5种去重方式,快速去重

文章目录1.count(distinct)去重2.双重groupby去重3.row_number()over()窗口函数去重4.sortWithinPartitions+dropDuplicates5.mapPartitions+HashSet分区内去重1.count(distinct)去重sql中最简单的方式,当数据量小的时候性能还好.当数据量大的时候性能较差.因为distinct全局只有一个reduce任务来做去重操作,极容易发生数据倾斜的情况,整体运行效率较慢.示例:(对uid去重)selectcount(distinctuid)uv,name,agefromAgroupbyname,a