Pyspark aboutQuantile throw错误

时间:2017-09-19 06:54:26

标签: apache-spark pyspark spark-dataframe

我已经将一个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)at py4j.reflection.Remand.Uvine.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 个答案:

答案 0 :(得分:1)

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

请参阅docs中关于2.2中aboutQuantile接口更改的说明:

  

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