Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.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
Apache spark pyspark中的windowPartitionBy和重新分区_Apache Spark_Pyspark_Apache Spark Sql_Sparkr - Fatal编程技术网

Apache spark pyspark中的windowPartitionBy和重新分区

Apache spark pyspark中的windowPartitionBy和重新分区,apache-spark,pyspark,apache-spark-sql,sparkr,Apache Spark,Pyspark,Apache Spark Sql,Sparkr,我有一个小的SparkR代码,我想把它转换成pyspark。我不熟悉此windowPartitionBy和重新分区。你能帮我了解一下这个代码在做什么吗 ws <- orderBy(windowPartitionBy('A'),'B') df1 <- df %>% select(df$A, df$B, df$D, SparkR::over(lead(df$C,1),ws)) df2 <- repartition(col = df1$D) ws在pyspark中,它相当于:

我有一个小的SparkR代码,我想把它转换成pyspark。我不熟悉此windowPartitionBy和重新分区。你能帮我了解一下这个代码在做什么吗

ws <- orderBy(windowPartitionBy('A'),'B')
df1 <- df %>% select(df$A, df$B, df$D, SparkR::over(lead(df$C,1),ws))
df2 <- repartition(col = df1$D)

ws在pyspark中,它相当于:

from pyspark.sql import functions as F, Window
ws = Window.partitionBy('A').orderBy('B')
df1 = df.select('A', 'B', 'D', F.lead('C', 1).over(ws))
df2 = df1.repartition('D')
代码正在从窗口
ws
的下一行的
df
列A、B、D和C列中选择
df1


然后它使用D列将
df1
重新分区到
df2
。基本上,分区意味着数据帧在内存/存储器中的分布方式,它直接影响到数据帧的并行处理方式。如果您想了解有关重新划分数据帧的更多信息,可以转到pyspark中的

,它相当于:

from pyspark.sql import functions as F, Window
ws = Window.partitionBy('A').orderBy('B')
df1 = df.select('A', 'B', 'D', F.lead('C', 1).over(ws))
df2 = df1.repartition('D')
代码正在从窗口
ws
的下一行的
df
列A、B、D和C列中选择
df1

然后它使用D列将
df1
重新分区到
df2
。基本上,分区意味着数据帧在内存/存储器中的分布方式,它直接影响到数据帧的并行处理方式。如果您想了解有关重新划分数据帧的更多信息,可以访问