apache-spark - 在 pyspark 的我的数据框中生成 6 位随机数作为新列
问题描述
我的数据框中有大量数据,现在我想尝试使用 6 位随机数插入新列。我试过 lit(randrange(99999)) 没有按预期工作,它产生的结果小于 6 位数字,并且为整个数据帧产生了静态值。
解决方案
您可以使用内置的 spark 函数 rand() 来获得所需的结果。
spark.sql("select ceil(rand() * 1000000)").show()
将此添加到新列:假设 df 作为您的数据框:
df.withColumn("random6digit",ceil(rand() * 1000000))
推荐阅读
- ubuntu - Sonar Qube for Ubuntu 成功扫描 .NET 项目,但未分析任何问题
- git - 更改并未反映在 Visual Studio 通过 GIT 的 bitbucket 中
- python - 点对应的基本矩阵
- c++ - 调用类的静态成员传递参数并获取返回值
- javascript - 谷歌分析实时 API 从响应中访问“totalsForAllResults”属性
- python - 如何使用 Vispy 将视觉图像转换为极坐标
- python - 如果一组字符串为空,如何使用循环检查?
- sql - SQL Server 代理作业安全密码
- wordpress - 如何将affiliatewp 选择会员字段添加到最终会员注册表
- python - Pandas - 删除 x 列中带有字符串 a 和 y 列中带有字符串 b 的行