Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PySpark dataframe approxQuantile以列表形式返回结果_Python_Apache Spark_Pyspark - Fatal编程技术网

Python PySpark dataframe approxQuantile以列表形式返回结果

Python PySpark dataframe approxQuantile以列表形式返回结果,python,apache-spark,pyspark,Python,Apache Spark,Pyspark,我使用下面的函数从两列“Apple”和“Oranges”中获取百分位数。然而,我将结果作为列表返回 df.approxQuantile(['Apple', 'Oranges'],[0.1, 0.25, 0.5, 0.75, 0.9, 0.95],0.1) 我想将结果作为列返回。任何建议: 期望输出: +-------+--------------------+---------------------+ |Percentile | Apple| Orang

我使用下面的函数从两列“Apple”和“Oranges”中获取百分位数。然而,我将结果作为列表返回

df.approxQuantile(['Apple', 'Oranges'],[0.1, 0.25, 0.5, 0.75, 0.9, 0.95],0.1)
我想将结果作为列返回。任何建议:

期望输出:

+-------+--------------------+---------------------+
|Percentile |               Apple|      Oranges    |
+-------+--------------------+---------------------+
|  10      |              50     |              502|
|  25      |              12     |              431|
|  50      |              1.15   |             5065|
|  75      |              3224   |             1275|
|  90      |              2234   |              100|
+-------+--------------------+---------------------+

由于API是以特定的方式设计的,因此除了转换结果之外,您在这里可以做的事情不多:

percentiles = [0.1, 0.25, 0.5, 0.75, 0.9, 0.95]
columns = ["Apple", "Oranges"]

spark.createDataFrame(
    zip(percentiles, *df.approxQuantile(columns, percentiles, 0.1)), 
    ["Pecentile"] + columns
)
你能提供一个简单的输入数据吗?阅读更多关于。