for-loop - 如何在 pyspark 中进行并行计算以提高效率,而不是循环“for”?
问题描述
import pyspark.sql.functions as F
pd_df = pd.DataFrame(np.arange(30).reshape(6 ,5), columns=['a', 'b', 'c', 'd', 'e'])
print df
spark_df = sqlContext.createDataFrame(df)
for col in ['b', 'c', 'd', 'e']:
df_groupby = spark_df.groupby(col).count(F.col('a'))
spark_df = spark_df.join(df_groupby, col, how = 'left')
输出:
a b c d e
0 0 1 2 3 4
1 5 6 7 8 9
2 10 11 12 13 14
3 15 16 17 18 19
4 20 21 22 23 24
5 25 26 27 28 29
我有一个像这种类型的大数据要处理
我认为关于“for”的循环会降低效率
谁能告诉我如何并行计算以提高 pyspark 的效率
真诚的感谢
解决方案
推荐阅读
- pytorch - 使用小批量时累积的 pytorch 损失
- html - 根据多长时间前显示日期或日期名称的最近呼叫
- sockets - Dart 套接字不发送低于 31 的 utf-8 字符
- docker - 如何通过互联网连接到 Docker 容器中打开的 tcp 端口
- android - ExifInterface 无法处理来自 sdcard 的文件
- email - 未送达的邮件退回给发件人 Roundcube Plesk
- r - R中分类变量中跳跃的regsubsets包力
- php - 根据 WooCommerce 产品价格添加免费送货通知
- go - 最佳实践:将资产嵌入文件树?
- linux-kernel - SYN 洪水上的高 CPU 负载