首页 文章

Pyspark aboutQuantile投掷错误

提问于
浏览
0

我已经将一个csv文件加载到我的spark数据帧中,之后如果我尝试使用 approxQuantile 方法计算,这会给我一个错误 . 尝试使用不同的数据集和不同的列,概率和relativeError . 帮助我了解正在发生的事情 .

df.approxQuantile("column_name", [0.2,0.3,0.6,1.0], 0)

我收到以下错误:

py4j.protocol.Py4JError:调用o30.approxQuantile时发生错误 . 跟踪:py4j.Py4JException:方法approx4uantile([class scala.collection.immutable . $ colon $冒号,类scala.collection.immutable . $冒号$冒号,类java.lang.Double])在py4j.reflection中不存在 . ReflectionEngine.getMethod(ReflectionEngine.java:318)在py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:326)在py4j.Gateway.invoke(Gateway.java:272)在py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java :132)at py4j.commands.CallCommand.execute(CallCommand.java:79)at py4j.GatewayConnection.run(GatewayConnection.java:214)at java.lang.Thread.run(Thread.java:745)

1 回答

  • 1

    如果您的pyspark驱动程序使用Spark 2.2.0并且您的Spark群集正在运行2.1.1(或更早版本),则会发生这种情况 . 确保您的驱动程序和群集版本匹配,您应该好好去!

    请参阅docs中有关2.2中aboutQuantile接口更改的注释:

    在2.2版中更改:添加了对多列的支持 .

相关问题