【发布时间】:2021-08-09 19:39:45
【问题描述】:
我在 pyspark 数据框中有一列表示电子设备的使用年限,这些值以毫秒为单位。有没有一种简单的方法可以将该列的值转换为年份?我对 Spark 不太熟悉。
编辑:我知道您可以通过基本数学轻松地将毫秒转换为年,我正在尝试获取 pyspark 数据框的一列并对其进行迭代并将所有列值转换为不同的值。是否有一个特定的 pyspark 函数可以使这更容易或没有?我有一列,其中所有值都是非常大的整数,时间以毫秒为单位,我试图根据设备的使用寿命过滤掉太小或太大而无法理解的值。
table.filter(F.col("age")>0).filter(F.col("age")<yearsToSeconds(20))
yearToSeconds 是一个非常基本的函数,可以将年份转换为秒。我更希望能够将列值转换为年,但我之前没有使用过 spark,我不知道这样做的最佳方法。
【问题讨论】:
-
只除以适当的因子?
-
请提供示例数据和所需的输出,但是如果您有一个以毫秒为单位的数字,并且您想将其转换为年份,正如 mck 所说,您必须将该数字除以得到等效年份
标签: python sql apache-spark pyspark data-science