Apache spark Pyspark:尝试使用';大于';布尔表达式

Apache spark Pyspark:尝试使用';大于';布尔表达式,apache-spark,pyspark,apache-spark-sql,Apache Spark,Pyspark,Apache Spark Sql,有没有办法创建一个只保存“大于1”的值的新列? 有一个用于转发的列,我需要创建一个二进制的新列。0表示零次转发,1表示pyspark中的一次或多次转发。您可以使用 df.withColumn('greater_than_1', (F.col('retweets').cast('int') >= 1).cast('int')) 我得到了列但没有值,它是一个空列。那是因为你的转发列是空的。所以列是字符串,它们需要是整数还是数字?哦,是的,你可以将它们转换为整数。我编辑了我的应答转发,有值,但

有没有办法创建一个只保存“大于1”的值的新列? 有一个用于转发的列,我需要创建一个二进制的新列。0表示零次转发,1表示pyspark中的一次或多次转发。

您可以使用

df.withColumn('greater_than_1', (F.col('retweets').cast('int') >= 1).cast('int'))

我得到了列但没有值,它是一个空列。那是因为你的
转发
列是空的。所以列是字符串,它们需要是整数还是数字?哦,是的,你可以将它们转换为整数。我编辑了我的应答转发,有值,但它是字符串列。