有没有办法将一对RDD转换回常规RDD
假设我得到一个本地csv文件,首先将其作为常规rdd加载
rdd = sc.textFile("$path/$csv")
然后我创建一对rdd(即key是“,”之前的字符串,value是“,”之后的字符串)
我使用saveAsTextFile()存储pairRDD
但是,根据调查,存储的文件将包含一些必要的字符,例如“u'”(“and”)”(pyspark只是调用toString(),以存储键值对)
我想知道是否可以转换回常规rdd,这样保存的文件就不会
背景:
我想将Avro文件作为RDD读入Spark。我想知道如果我可以访问Avro数据模式,是否可以一次解析一行Avro文件
我正在使用pyspark编写我的spark作业。我正在考虑使用sc.textfile来读取这个巨大的文件,并进行并行解析,如果我一次可以解析一行的话。任何指向每次解析一行Avro文件的指针都将不胜感激 Spark用于并行多个文件分区的大数据处理,一次读取一行不能作为Spark用例
您可以在行转换的帮助下添加业务逻辑(应用于每一行),spark将延迟执行。spark用于并行
是什么原因导致我的pyspark应用程序在warn集群上使用warn集群模式比在warn客户端模式下花费的时间多4个时间?在纱线簇模式下是否有提高性能的技巧
我正在尝试运行以下利用graphframes的代码,现在我遇到了一个错误,据我所知,在谷歌搜索了几个小时后,我无法解决这个错误。似乎一个类无法加载,但我真的不知道我还应该做什么
有人能再看看下面的代码和错误吗?我已经按照中的说明进行了操作,如果您想快速尝试,可以找到我的数据集
这是输出:
Ivy Default Cache set to: /Users/username/.ivy2/cache
The jars for the packages stored in: /Users/usernam
我们有一个MapR集群,它正在运行,但现在突然停止,甚至不能在MapR演示集群上运行。我们正在运行MAPR5.1和Spark 1.6.1
from pyspark import SparkConf, SparkContext
from pyspark import HiveContext
from pyspark.sql import DataFrameWriter
conf = SparkConf().setAppName('test')
sc = SparkContext(conf=conf
我想使用pysparksql将标签分配给下面数据框中的分类号
在婚姻栏中,1=已婚,2=未婚。在教育栏中,1=毕业生,2=本科生
Current Dataframe:
+--------+---------+-----+
|MARRIAGE|EDUCATION|Total|
+--------+---------+-----+
| 1| 2| 87|
| 1| 1| 123|
| 2| 2| 3|
|
我们正在使用pyspark 1.6。正在尝试将文本转换为其他文件格式
(如Json、csv等)和压缩(gzip、lz4、snappy等)。但无法看到压缩工作
请找到我们试过的密码。请帮助我们指出代码中的问题,否则建议解决方法。
只是想补充一个问题,在1.6中没有一个压缩是有效的,但是在spark 2.X中它工作得很好
备选案文1:
from pyspark import SparkContext SparkConf
sqlContext.setConf("spark.sql.parquet.co
我是GeoGrillis的新手,对geopyspark自述中的示例脚本有疑问:
下面是该脚本的缩写版本(我们称之为example.py):
我可以使用python3 example.py在EMR集群上运行这个,但是当我尝试运行spark submit example.py时,我得到了TypeError:“JavaPackage”对象是不可调用的
这似乎指向geopyspark/GeoGrillis/geotiff_rdd.py中的这条线:
geotiff\u rdd=geopysc.\u jvm
标签: Pyspark
apache-spark-mllibevolutionary-algorithmdeap
我想在spark上使用pyspark运行GA、PSO等进化算法。如何使用Deap python库使用MLLib实现这一点。是否有其他库可用于执行相同的任务 看看如何将DEAP与Spark结合使用,看看它是否适合您
下面是一个如何使用Spark将DEAP配置为自定义的示例
从pyspark导入SparkContext
sc=SparkContext(appName=“DEAP”)
def sparkMap(算法,总体):
返回sc.parallelize(population).map(算法)
工
我了解如何在PySpark中检查表是否存在:
>>> spark.catalog.setCurrentDatabase("staging")
>>> 'test_table' in sqlContext.tableNames()
True
但是,关于观点呢?
如果它是这样创建的:
df = sqlContext.sql("SELECT * FROM staging.test_table")
df.createOrReplaceTempView("test_v
我正在Hadoop纱线集群上执行spark提交作业
spark提交/opt/spark/examples/src/main/python/pi.py 1000
但面对下面的错误消息。看来工人还没有开始工作
2018-12-20 07:25:14 INFO SparkContext:54 - Created broadcast 0 from broadcast at DAGScheduler.scala:1161
2018-12-20 07:25:14 INFO DAGSched
我刚刚开始为Pyspark工作,需要一些转换列数据类型的帮助。
我的dataframe有一个字符串列,它将一天中的时间存储在AM/PM中,我需要将其转换为datetime以进行进一步的处理/分析
fd = spark.createDataFrame([(['0143A'])], ['dt'])
fd.show()
+-----+
| dt|
+-----+
|0143A|
+-----+
from pyspark.sql.functions import date_format, to_
我在pyspark中有一个数据帧,如下所示:
df=spark.table('db.table'))
.选择(F.col('key')。别名('key_a'),
F.截止日期('move_out_date','yyyyymmdd')。别名('move_out_date'))
现在,我想将移出日期列与日期20151231进行比较。但是下面的代码不起作用
从pyspark.sql导入函数为F
df.filter(F.datediff(F.col('move_out_date')、F.to_date
标签: Pyspark
apache-spark-mllibapache-spark-ml
我有一个ML管道挂起很长时间而没有完成,所以我划分了步骤并检查每个步骤的输出。
我发现VectorAssembler在小数据集上挂起了很长时间
当我运行show()步骤时,它将永远挂起。
我还通过使用0进行插补验证了问题不是由于空值引起的
df2_impute = df2.na.fill(0)
continuousCols = numeric_columns+various_cols+additionalFlds
HashedInputs = [c + "_hashed" for c in ca
标签: Pyspark
user-defined-functionspickleazure-databricksazure-machine-learning-service
我使用的是DataRicks,数据框中有一列,我需要通过外部web服务调用为每个记录更新该列。在本例中,它使用Azure机器学习服务SDK并执行服务调用。这段代码在spark中不作为UDF运行(即python)时运行良好,但是当我尝试将其作为UDF调用时,它会抛出一个序列化错误。如果使用lambda和带有rdd的映射,也会发生同样的情况
该模型使用fastText,可以通过普通http调用或使用AMLS的WebService SDK从Postman或python中很好地调用-只有当它是UDF时,
我有两个csv文件。文件1:
D,FNAME,MNAME,LNAME,GENDER,DOB,snapshot
2,66M,J,Rock,F,1995,201211.0
3,David,HM,Lee,M,,201211.0
6,66M,,Rock,F,,201211.0
0,David,H M,Lee,,1990,201211.0
3,Marc,H,Robert,M,2000,201211.0
6,Marc,M,Robert,M,,201211.0
6,Marc,MS,Robert,M,2000,
我有一个pyspark数据帧:
数据帧示例:
id | column_1 | column_2 | column_3
--------------------------------------------
1 | ["12"] | ["""] | ["67"]
--------------------------------------------
2 | ["""] | ["78"] | ["90"
下面是我的数据框架
df = sqlContext.createDataFrame(
[("0", "0"), ("1", "2"), ("2", "3"), ("3", "4"), ("4", "0"), ("5", "5"), ("6", "5")],
["id", "value"])
+---+-----+
| id|value|
+---+-----+
| 0| 0|
| 1| 2|
| 2| 3|
| 3| 4|
| 4| 0|
标签: Pyspark
jupyterpyspark-dataframes
我正在学习PYSPARK,遇到了一个无法修复的问题。我跟随这段视频从PYSPARK文档中复制代码来加载线性回归的数据。我从文档中得到的代码是spark.read.format'libsvm.load'file.txt'。在此之前,我创建了一个spark数据帧。当我在Jupyter笔记本中运行此代码时,它不断地给我一些java错误,视频中的家伙做了与我完全相同的事情,他没有得到这个错误。有人能帮我解决这个问题吗?
非常感谢 我想我通过在选项方法中设置numFeatures解决了这个问题:
tra
我刚刚开始学习pyspark在本地机器上使用standalone。我无法让检查站工作。我把剧本归结为
spark = SparkSession.builder.appName("PyTest").master("local[*]").getOrCreate()
spark.sparkContext.setCheckpointDir("/RddCheckPoint")
df = spark.createDataFrame(["10","11","13"], "string").toDF("age
我们有多个Borker,连接使用SSL协议进行保护。为了创建kafka direct stream,我尝试如下传递ssl信息,但其抛出错误
kafkaParams = {"metadata.broker.list": "host1:port,host2:port,host3:port",
"security.protocol":"ssl",
"ssl.key.password":"***
我有以下要求
如何使用pyspark爆炸函数实现这一点@Mohammad Murtaza Hashmi
再次需要你的帮助
F.split(F.concat_ws(',',*(x for x in df.columns if x.startswith('daily_qty'))),',')
我不知道如何修改上述内容以满足以下要求
当前目标表如下所示,这是错误的
我有一个要求,我想通过pyspark阅读一个以格式(2017-01-12t141206)获取时间戳的列。我尝试了一些在不同论坛上提到的功能,例如strtime、strftime和其他一些功能,但都没有效果。有人能告诉我相关信息吗?谢谢 使用.to_timestamp(或)unixtime中的,unix\u timestamp函数用于这种情况
示例:
#using to_timestamp function
spark.sql("""select to_timestamp("2017-01-12t
标签: Pyspark
apache-spark-sqllogparser
我试图解析一个包含数百万条记录的日志文件。它包含主机名、时间戳、状态码等。在成功解析主机、状态码和url后,当我尝试解析时间戳时,我得到一个错误。以下是我的代码:
lines=sc.textFile(filepath)
df_log= lines.map(lambda x: Row(header=x)).toDF()
timestamp_pattern= r'\[\d{2}\/\w{3}\/\d{4}\:\d{2}\:\d{2}\:\d{2}\s\S+\d{4}]'
df2=df_log.sel
标签: Pyspark
databricksazure-databricks
我试图深入研究pyspark,找出所有不同的方法来跟踪在spark上下文中读取的文件的元数据。我主要使用Databricks,并希望找出不同的函数,如下面列出的函数,这些函数将为我提供有关数据的一些重要元数据信息
input_file_name()
printSchema()
df.describe().show()
我是pyspark的新手,我不知道如何获取此类信息。有没有一种方法可以获得pyspark中所有此类元数据函数的列表?提前感谢。这些是获取元数据信息的不同方法
对于数据集df的模式
我有下面的PySpark数据框,其中每列代表一个时间序列,我想研究它们到平均值的距离
+----+----+-----+---------+
| T1 | T2 | ... | Average |
+----+----+-----+---------+
| 1 | 2 | ... | 2 |
| -1 | 5 | ... | 4 |
+----+----+-----+---------+
这就是我希望得到的:
+----+----+-----+---------+
我在执行以下代码行时出错:
deltaTarget.alias('target').merge(df.alias('source'), mergeStatement).whenMatchedUpdateAll().whenNotMatchedInsertAll().execute()
错误如下:
AnalysisException:给定列{目标列列表},无法解析UPDATE子句中的新_列。“new_column”确实不在目标增量表的架构中,但根据,这应该只是更新增量表的现有架构并添加列
我还使
我意识到了这一点
我也看到了
然而,这些都不起作用。无论发生什么情况,Livy都会继续使用Python 2.7
这是在EMR集群上运行Livy 0.6.0
我已将hadoop用户、我的用户、root用户和ec2用户中的PYSPARK\u PYTHON环境变量更改为/usr/bin/python3。通过ssh登录EMR主节点并运行pyspark将按预期启动python3。但是,Livy一直在使用python2.7
我在/etc/spark/conf/spark env.sh文件中添加了expo
空RDD没有反序列化程序,这会妨碍将不同的数据集附加到一个数据集上。我希望像pandas(df.append(new_df))方法一样,将我的数据集相互附加。有什么解决办法吗
df2 = spark.sparkContext.emptyRDD()
print(df2)
df2=df2.union(df_ptvb).cache()
最后一条语句导致错误。我有一个名为df_ptvb的有效RDD,我想将它附加到我的空数据集中。我计划在管道上进一步锁定更多的数据集
我正在使用Pyspark并试图计算两个数据帧中向量之间的Jaccard相似性。为此,我可以使用approxSimilarityJoin来计算距离,然后从1.0中减去。通过使用approxSimilarityJoin,它计算每对的距离。因为我只对2个数据帧中的匹配之间的距离感兴趣,所以我生成了大量冗余数据,当我使用大型数据集时,这些数据会导致代码失败
有谁能推荐一种只计算两个数据帧中定义的一组对之间的approxSimilarityJoin的方法吗
我使用的代码如下:
# build the mo
这是我的第一行数据:
Row(params=['id=407439', 'a=something', 'b=something_else', 'c=anything', 'd='])
我需要两列值分别为a和b
Row(a='a=something', b='b=something_else')
或
我找到了这样的答案:
但它没有说明如何通过某种字符串模式而不是索引来选择元素
我不知道这是否重要,但我的第一行列表是:
some_data.withColumn('params', split(s
我正在使用pyspark开发回归分类算法。我想将模型输出保存到CSV文件中。我用过
dataframe.savaAstextFile('hdfs://a/b/x')
但它会抛出一个错误,说明saveAstextFile属性不在列表中。请参阅以下代码并告知:
from __future__ import print_function
from pyspark import SparkContext
from pyspark.sql import SQLContext
from pyspark.
标签: Pyspark
apache-spark-sqlwindow-functions
我有一个dataframe,其中的列如下:
df_lp.show()
+--------------------+-------------+--------------------+------+
| ts| uid| pid|action|
+--------------------+-------------+------------------
我试图使用DataRicks中的一个单元格来显示数据框,并在显示器下面打印一些文本。我在Databricks论坛或这里都找不到任何相关信息。这是一个极其简单的问题,所以如果是显而易见的,请道歉
myDF是一个pyspark.sql.dataframe
我正在做的是:
myString = 'aasdf45'
print(myString)
display(myDF)
单元格的输出显示DF,但不打印文本
如果以另一种方式执行此操作,则在显示后打印字符串,结果仍然相同,显示dataframe,但没
我是pyspark的新手,我有如下表格,我想绘制这个df的直方图,x轴将包括“单词”,x轴将包括“计数”列。你知道吗
word count
Akdeniz’in 14
en 13287
büyük 3168
deniz 1276
festivali: 6
首先,直方图不是显示字数的正确图表类型。柱状图有助于可视化变量的分布,相反,柱状图用于比较变量(有关更多信息,请阅读本文)。使用以下代码
我有关于自治区、街道名称和邮政编码的数据。我正在尝试根据自治区和街道名称填充邮政编码中缺少的值
我的数据如下所示:
ï..BOROUGH Street.Name Zip.Code
2850662 BRONX CITY ISLAND ROAD 10464
2850740 BRONX CITY ISLAND ROAD 10464
2850749 BRONX CITY ISLAND ROAD NA
标签: Pyspark
networkxigraphspark-graphxgraphframes
我的输入数据帧是df
valx valy
1: 600060 09283744
2: 600131 96733110
3: 600194 01700001
我想创建一个图,上面两列是edgelist,然后我的输出应该有图的所有顶点及其成员的列表
我也在pyspark和networx库中尝试了Graphframe,但没有得到想要的结果
我的输出应该如下所示:V1下的所有valx和valy都是顶点,V2下的成员信息
V1 V
标签: Pyspark
pyspark-sqlcorrelated-subqueryapache-spark-2.3
表1列[F、S、E]
F1 S1 R
F1 S2 R2
F1 S3 R1
F2 S1 R2
F2 S4 R4
F1 S4 R
F1 S1 R
F1 S3 R
F2 S4 R4
表2列[F,S]
F1 S1
F1 S3
F2 S1
F2 S4
仅当Tab2中存在F->S关系时,才从TAB1中获取行
结果列[F、S、E]
F1 S1 R
F1 S2 R2
F1 S3 R1
F2 S1 R2
F2 S4 R4
F1 S4 R
F1 S1 R
F1 S3 R
F2 S4 R4
我现在有了这个查
标签: Pyspark
apache-spark-mllibtf-idf
我已经对TF-IDF和关键字RDD进行了规范化处理,现在我想计算余弦相似度以找到文档的相关性得分
所以我试着
documentRdd = sc.textFile("documents.txt").flatMap(lambda l: re.split(r'[^\w]+',l))
keyWords = sc.textFile("keywords.txt").flatMap(lambda l: re.split(r'[^\w]+',l))
normalizer1 = Norma
我有一个表,它有一个数组类型的列,名为history
从表中选择历史记录
当我从雪花浏览器查询时,它显示
[{
"expirydate": "2019-01-23 23:59:59.000 -0700"
}]
[Row(history=u'[{"expirydate":"-0700 2019-09-23 23:59:59.000"}]')]
当我从PySpark运行相同的查询时,它显示
[{
"expirydate": "2019-01-23 23:59:59.000 -0700"
标签: Pyspark
pyspark-sqlpyspark-dataframes
-我是pyspark的新手,我正在尝试删除空白,在我尝试将日期字符串类型转换为未转换的日期时间格式之后,我不会被删除。请帮我怎么做
我试过这个:
emp=spark.read.csv("Downloads/dataset2/employees.csv",header=True)
dd=list(map(lambda x: x.replace(" ",""),emp.columns))
df=emp.toDF(*dd)
+----------+---------+-----------+-
我尝试读取带有pyspark的CSV文件,其中包含以下行:
2100,"Apple Mac Air A1465 11.6"" Laptop - MD/B (Apr, 2014)",Apple MacBook
我的阅读代码:
df=spark.read.options(header='true',inferschema='true').csv(文件路径)
而df在中间拆分第二个组件:
first component: 2100
second component: "Apple Mac Air
标签: Pyspark
pyspark-sqlpyspark-dataframes
我的spark数据看起来像-
area product score
a aa .39
a bb .03
a cc 1.1
a dd .5
b ee
是否可以通过以下方式将pyspark数据帧传递给XGBClassifier:
from xgboost import XGBClassifer
model1 = XGBClassifier()
model1.fit (df.select(features), df.select('label'))
如果没有,那么将pyspark数据帧安装到xgboost的最佳方法是什么
非常感谢我相信有两种方法可以剥这只猫的皮。
您可以:
使用toPandas方法将pyspark数据框移动到pandas,或者
代码在函数外部工作,但是当我在函数内部使用它并调整传递的var参数时,我得到了一个错误。谢谢你的帮助
from pyspark.sql.types import DateType
from pyspark.sql.functions import col, unix_timestamp, to_date
def change_string_to_date(df,var):
df = df.withColumn("{}".format(var),to_date(unix_
下面是一个场景示例,我想在代码不再使用df1时立即删除df1以释放内存-
df1 = spark.sql("Select 1 as X")
df2 = df1.withColumn("Y", df1["X"])
# here if I want to remove df1 then what should be the code.
df2.show()
如果使用df.persist()或某个缓存级别,则可以取消数据帧的持久化。但在这里,我们没有使用任何缓存。
如果确实要清除内存,请检查垃圾
我有以下代码:
str_stack_query ="stack( 7, 'SERIAL_NO',SERIAL_NO , 'TICKET_NO',TICKET_NO , 'FIXED_ASSET',FIXED_ASSET , 'RETREAT',RETREAT , 'ARTICLE',ARTICLE , 'DESCRIPTION',DESCRIPTION , 'ctl_rid',ctl_rid ) as (COL_NAME, SOURCE_VALUE)"
标签: Pyspark
apache-spark-sqlpyspark-dataframes
数据框已按日期排序
col1==1的值是唯一的
如果传递col1==1,它将增加增量1(例如1,2,3,4,5,6,7…)
只有-1是重复的
我有一个数据框,看起来像这样,叫它df
TEST_schema = StructType([StructField("date", StringType(), True),\
StructField("col1", IntegerType(), True),\
我的目标是从现有的目录表中读取dataframe,进行一些转换并用它创建一个新表。因此,根据,我使用sink.writeFrame方法:
datasource0 = glueContext.create_dynamic_frame.from_catalog(database = "my_db", table_name = "table1", transformation_ctx = "datasource0")
datasource1
标签: Pyspark
apache-spark-sqlpyspark-dataframes
我对Pyspark中的ML操作有点怀疑
Pyspark中的fit操作是分布式操作/处理,或者整个fit操作在单个节点上执行
详细信息:我试图在一个巨大的数据集上安装KMeans算法,但这需要很长时间。因此,我想在同样的问题上澄清一点
PS:我是Pyspark的新手,因此如果您觉得这个问题很愚蠢,请原谅它是分发的。您的环境是什么?我正在使用一个包含Pyspark 3.0、Java 1.8和Python 3.5的EC2 linux实例。我可以看到所有执行者都同时被锁定。在我的经验中可以看到,我使用的
上一页 1 2 3 4 5 6 7 8 9 ...
下一页 最后一页 共 63 页