问题标签 [spark-dataframe]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
17154 浏览

scala - Replacing null values with 0 after spark dataframe left outer join

I have two dataframes called left and right.

Then, I join them to get the joined Dataframe. It is a left outer join. Anyone interested in the natjoin function can find it here.

https://gist.github.com/anonymous/f02bd79528ac75f57ae8

Since it is a left outer join, the real_labelVal column has nulls when user_uid is not present in right.

I want to replace the null values in the realLabelVal column with 1.0.

Currently I do the following:

  1. I find the index of real_labelval column and use the spark.sql.Row API to set the nulls to 1.0. (This gives me a RDD[Row])
  2. Then I apply the schema of the joined dataframe to get the cleaned dataframe.

The code is as follows:

Is there an elegant or efficient way to do this?

Goolging hasn't helped much. Thanks in advance.

0 投票
0 回答
1190 浏览

apache-spark - Spark Dataframe - 组合数据帧的最佳方式

我目前使用 databricks 库将 CSV 文件加载到 Dataframes 中。

我正在寻找最好的通用方法来使用特定键对加载的数据帧进行组合,因为组合操作仅适用于 PairRDD。

我发现这篇文章为 Dataframes 实现了 cogroup 功能,但我想有一些不同的方法:

https://gist.github.com/ahoy-jon/b65754cde98cc48b9b38

请问你有没有遇到过这种情况?

谢谢。

0 投票
1 回答
13942 浏览

apache-spark - 将数据帧分组到列表中

我正在尝试对集合进行一些分析。我有一个示例数据集,如下所示:

订单.json

它只是一个字段,它是代表 ID 的数字列表。

这是我要运行的 Spark 脚本:

简而言之,创建expanded并且grouped很好,expanded是两个 ID 的所有可能集合的列表,其中两个 ID 在相同的原始集合中。grouped过滤掉与自己匹配的 ID,然后将所有唯一的 ID 对组合在一起,并为每个 ID 生成一个计数。的架构和数据样本grouped是:

所以,我的问题是:我现在如何对每个结果中的第一项进行分组,以便我有一个元组列表?对于上面的示例数据,我希望类似于以下内容:

正如您在我的脚本中看到的那样recs,我认为您应该首先在“item1”上执行 groupBy,这是每行中的第一项。但在那之后,您将得到这个 GroupedData 对象,该对象的操作非常有限。真的,您只需要进行 sum、avg 等聚合。我只想列出每个结果中的元组。

此时我可以轻松使用 RDD 函数,但这与使用 Dataframe 不同。有没有办法用数据框函数做到这一点。

0 投票
1 回答
1504 浏览

java - 如何从行集合创建数据框?

我想从解析的字符串 RDD 手动创建一个数据框。我已经有了我的 StructType,我可以从RowFactory.create(StructType[]). 我看到一个名为sqlContext.createDataFrame(RDD<Row>, StructType)RDD 和 StructType 的方法。那么如何将我的 Row 对象变成 RDD 呢?

0 投票
8 回答
91148 浏览

python - 在 PySpark 数据框中添加列总和作为新列

我正在使用 PySpark,我有一个带有一堆数字列的 Spark 数据框。我想添加一个列,它是所有其他列的总和。

假设我的数据框有“a”、“b”和“c”列。我知道我可以这样做:

问题是我不想单独输入每一列并添加它们,特别是如果我有很多列。我希望能够自动执行此操作,或者通过指定要添加的列名列表来执行此操作。还有另一种方法可以做到这一点吗?

0 投票
2 回答
13568 浏览

python - pyspark数据框,groupby和计算列的方差

我想对 pyspark 数据框进行分组并计算特定列的方差。对于平均而言,这很容易,可以像这样完成

但是对于方差,函数子模块中似乎没有任何聚合函数(我也想知道为什么,因为这是一个很常见的操作)

0 投票
1 回答
3369 浏览

pandas - 如何将键和值列表转换为pyspark中的数据框?

我有一个包含键和值的文本文件,其中一些值丢失了,

我想填充缺失的值,所以我做了(数据是我的 rdd)

现在 data1 看起来像:

现在我希望将上面的 data1 写入我尝试过的数据框/表中

但我收到一个错误

1)如何写入数据框?2)如何将键和列表转换为如下所示的单个元组?

这样我就可以直接写入数据框了吗?

提前致谢 :)

0 投票
1 回答
1073 浏览

python - Python + Pandas + Spark - 如何将数据框导入 Pandas 数据框并将其转换为字典?

如何将数据框导入 Pandas 数据框并将其转换为字典?

我有从 Spark 创建的这个数据框,

当我尝试将其导入熊猫时,

我得到这个错误,

[client 127.0.0.1:50885] PandasError:DataFrame 构造函数未正确调用!

毕竟,我只是想将数据框转换成字典,

有任何想法吗?

0 投票
1 回答
48869 浏览

python - 如何在 pySpark 数据框中添加行 ID

我有一个 csv 文件;我在pyspark中转换为DataFrame(df);经过一些改造;我想在df中添加一列;这应该是简单的行 id(从 0 或 1 到 N)。

我在rdd中转换了df并使用“zipwithindex”。我将生成的 rdd 转换回 df。这种方法有效,但它生成了 250k 个任务并且需要大量执行时间。我想知道是否有其他方法可以减少运行时间。

以下是我的代码片段;我正在处理的 csv 文件很大;包含数十亿行。

0 投票
4 回答
7006 浏览

java-8 - 如何在 Spark SQL 中向现有 Dataframe 添加新列

我使用DataFrame API

我有现有的 DataFrame 和一个 List 对象(也可以使用 Array)。如何将此列表作为新列添加到现有 DataFrame 中?我应该为此使用Column类吗?