当前位置: 首页 > 知识库问答 >
问题:

使用随机数据添加新列

宰父熙云
2023-03-14
from random import randint

df1 = df.withColumn('isVal',randint(0,1))

/spark/python/pyspark/sql/dataframe.py“,第1313行,在withColumn assert isinstance(col,Column)中,”col应该是Column“assertionerror:col应该是Column

如何使用自定义函数或randint函数为列生成随机值?

共有1个答案

季稳
2023-03-14

您使用的是python builtin Random。这将返回一个特定的常量值(返回值)。

如错误消息所示,我们需要一个表示表达式的列。

要做到这一点,请:

from pyspark.sql.functions import rand,when
df1 = df.withColumn('isVal', when(rand() > 0.5, 1).otherwise(0))
 类似资料:
  • 我正在尝试创建用于测试目的的播种机。我有通过房间id属于房间的用户,这些房间是通过房间种子程序创建的,在我的用户种子程序中,我创建一个用户并更新房间id属性,如下所示, 我的问题是,这里生成的所有用户,都获得相同的房间id,如何才能从数据库中真正获得随机房间id,并在我的播种机中使用它?

  • 显然,出于某种原因,Gradle 似乎认为我的“Spring数据”依赖于 slf4j。这是 gradle 打印出来的依赖关系图 尽管spring data commons实际上并不依赖于slf4j:http://mvnrepository.com/artifact/org.springframework.data/spring-data-commons/1.5.1.RELEASE 为什么gradl

  • 假设我得到的是范围内的随机数,使用: 假设它给出的数字小于或等于25,你就赢了,如果它给出的数字大于25,我就赢了。然后我有75%的机会赢。 我该如何加权这个数字大于25的概率的某个百分比,比如说1%。 所以,基本上,我试图将我获胜的几率再提高1%,而不是仅仅说“你赢24分或更少” 如果不清楚,请告诉我。

  • 问题内容: 我想向Firebase身份验证添加新数据,其中包含显示名称,电话号码,图像之类的数据。但是我想增加更多这样的性别,生日等等。是否可以添加新的? 问题答案: 无法将任意其他数据添加到Firebase身份验证用户配置文件。如果需要,请考虑使用Firebase Realtime数据库(或CloudFirestore)存储其他信息。 自几周前以来,您可以向Firebase身份验证用户配置文件中

  • 我想添加一个新的数据到firebase认证,它有像displayname,电话号码,图像的数据。但我想增加更多这样的性别,生日和更多。有可能添加新的吗?

  • 问题内容: 我尝试更新我的插件。因此,我必须升级mysql_table。但是当尝试新列时,程序会获得异常。 这是我当前的表格: 现在,我向colum添加多一张桌子。我尝试更改表,一次工作,并添加一列,但又刷新一次,我收到此错误。 这是我的代码 这是我的错误 WordPress数据库错误:[重复的列名’say_state’] ALTER TABLE wp_customer_say添加了say_sta