我在本地运行 SPARK(我没有使用 Mesos),并且在运行诸如 d3=join(d1,d2) 和 d5=(d3, d4) 之类的连接时,出现以下异常“org.apache.spark.SparkException:在 awaitResult 中抛出异常”。谷歌搜索,我找到了以下两个相关链接:
1) https://github.com/apache/spark/commit/947b9020b0d621bc97661a0a056297e6889936d3 2) https://github.com/apache/spark/pull/12433
这两者都解释了为什么会发生,但没有说明如何解决它。
关于我的运行配置的更多信息:
1) 我正在使用 spark-core_2.11、spark-sql_2.11
SparkSession spark = SparkSession
.builder()
.master("local[6]").appName("DatasetForCaseNew").config("spark.executor.memory", "4g").config("spark.shuffle.blockTransferService", "nio").getOrCreate();
Run Code Online (Sandbox Code Playgroud)
3) 公共数据集 buildDataset(){ ...
// STEP A
// Join prdDS with cmpDS
Dataset<Row> prdDS_Join_cmpDS
= res1
.join(res2, (res1.col("PRD_asin#100")).equalTo(res2.col("CMP_asin")), "inner");
prdDS_Join_cmpDS.take(1);
// STEP B
// Join prdDS with cmpDS
Dataset<Row> prdDS_Join_cmpDS_Join
= prdDS_Join_cmpDS
.join(res3, prdDS_Join_cmpDS.col("PRD_asin#100").equalTo(res3.col("ORD_asin")), "inner");
prdDS_Join_cmpDS_Join.take(1);
prdDS_Join_cmpDS_Join.show();
}
Run Code Online (Sandbox Code Playgroud)
当计算到达步骤 B 时,会抛出异常(参见下面的堆栈跟踪),直到步骤 A 正常为止。
有什么不妥或遗漏吗?
提前感谢您的帮助。
最好的问候,卡罗
=== STACK TRACE
Tests run: 1, Failures: …Run Code Online (Sandbox Code Playgroud) 如何添加一个额外的列,该列是每个课程的时间差的累积值?例如,初始表为:
id_A course weight ts_A value
id1 cotton 3.5 2017-04-27 01:35:30 150.000000
id1 cotton 3.5 2017-04-27 01:36:00 416.666667
id1 cotton 3.5 2017-04-27 01:36:30 700.000000
id1 cotton 3.5 2017-04-27 01:37:00 950.000000
id2 cotton blue 5.0 2017-04-27 02:35:30 150.000000
id2 cotton blue 5.0 2017-04-27 02:36:00 450.000000
id2 cotton blue 5.0 2017-04-27 02:36:30 520.666667
id2 cotton blue 5.0 2017-04-27 02:37:00 610.000000
Run Code Online (Sandbox Code Playgroud)
预期的结果是:
id_A course weight ts_A value cum_delta_sec
id1 cotton 3.5 2017-04-27 01:35:30 150.000000 0
id1 cotton 3.5 2017-04-27 01:36:00 416.666667 30
id1 …Run Code Online (Sandbox Code Playgroud) 我想用虚拟变量反转数据框。例如,
来自 df_input:
Course_01 Course_02 Course_03
0 0 1
1 0 0
0 1 0
Run Code Online (Sandbox Code Playgroud)
到 df_output
Course
0 03
1 01
2 02
Run Code Online (Sandbox Code Playgroud)
我一直在查看Reconstruct a categorical variable from dummys in pandas提供的解决方案,但它没有用。请,任何帮助将不胜感激。
非常感谢,最好的问候,卡罗
请给出两个数据帧:
DF1:
A B
a1 b1
a2 b2
a3 b3
Run Code Online (Sandbox Code Playgroud)
DF2:
C1 C2 C3
0 0 1
Run Code Online (Sandbox Code Playgroud)
我想做以下DF1 + DF2产生以下内容:
A B C1 C2 C3
a1 b1 0 0 1
a2 b2 0 0 1
a3 b3 0 0 1
Run Code Online (Sandbox Code Playgroud)
我不清楚我应该如何使用Merge,Join或concatenate.请,任何帮助将非常赞赏.
我想使用该fillna函数来填充列的None值,其中第一个最常用的值不是None或nan.
输入DF:
Col_A
a
None
None
c
c
d
d
Run Code Online (Sandbox Code Playgroud)
输出Dataframe可以是:
Col_A
a
c
c
c
c
d
d
Run Code Online (Sandbox Code Playgroud)
任何建议将非常感谢.非常感谢,最诚挚的问候,卡罗