![](/img/trans.png)
[英]How do I convert convert a unicode list contained in pyspark column of a dataframe into float list?
[英]How do I convert the value of a pyspark dataframe column?
我在 pyspark dataframe 中有一个电子设备使用年限的列,这些值以毫秒为单位。 有没有一种简单的方法可以将该列的值转换为年份? 我对 Spark 不太熟悉。
编辑:我知道您可以使用基本数学很容易地将毫秒转换为年,我正在尝试获取 pyspark dataframe 的列并遍历它并将所有列值转换为不同的值。 是否有特定的 pyspark function 可以使这更容易或没有? 我有一列,其中所有值都是非常大的整数,时间以毫秒为单位,我试图根据设备的使用寿命过滤掉太小或太大而无法理解的值。
table.filter(F.col("age")>0).filter(F.col("age")<yearsToSeconds(20))
其中yearsToSeconds 是将年份转换为秒的非常基本的function。 我更希望能够将列值转换为年,但我以前没有使用过 spark,我不知道这样做的最佳方法。
好吧,一种方法是使用withColumn
。
在这里,我演示了在 dataframe 中添加一个名为“ageinMin”的新列,并根据 dataframe 中的“age”列计算它,然后将其除以 600 以获得等效分钟数:
df.withColumn("ageinMin",col("age") /600)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.