繁体   English   中英

在pyspark中将文件时间转换为本地时间

Convert filetime to localtime in pyspark

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有一个镶木地板文件,其中包含如下所示的列

+--------------------+
|     Start_Time     |
+--------------------+
| 131696565231590000 |
| 131696565251590000 |
| 131726072567140000 |
| 131726073867090000 |
| 131726076586810000 |
| 131726079656940000 |
| 131726081667130000 |
| 131726085077090000 |
| 131726085207190000 |
+--------------------+

我需要阅读此文件并将此列转换为本地时间的日期时间列。 预期输出如下(我的本地时间是 IST):

+-------------------------+
|       Start_Time        |
+-------------------------+
| 2018-05-01 13:55:23.160 |
| 2018-05-01 13:55:25.160 |
| 2018-06-04 17:34:16.713 |
| 2018-06-04 17:36:26.710 |
| 2018-06-04 17:40:58.680 |
| 2018-06-04 17:46:05.693 |
| 2018-06-04 17:49:26.713 |
| 2018-06-04 17:55:07.710 |
| 2018-06-04 17:55:20.720 |
+-------------------------+

我尝试按如下所示单独转换时间戳并向其添加 +5.30,但是有没有更好的解决方案可以在我读取镶木地板文件本身或之后使用?

datetime.fromtimestamp((131696565231590000 - 116444736000000000) // 10000000)
1 个回复

您可以使用from_utc_timestamp并指定IST时区:

df2 = df.selectExpr("""
    from_utc_timestamp(
        timestamp((Start_Time - 116444736000000000) / 10000000), 'IST'
    ) as Start_Time
""")

df2.show(truncate=False)
+-----------------------+
|Start_Time             |
+-----------------------+
|2018-05-01 19:25:23.159|
|2018-05-01 19:25:25.159|
|2018-06-04 23:04:16.714|
|2018-06-04 23:06:26.709|
|2018-06-04 23:10:58.681|
|2018-06-04 23:16:05.694|
|2018-06-04 23:19:26.713|
|2018-06-04 23:25:07.709|
|2018-06-04 23:25:20.719|
+-----------------------+
4 在Go中将UTC转换为“本地”时间

如何将UTC时间转换为当地时间 ? 我已经为我需要当地时间的所有国家/地区创建了具有UTC时差的地图。 然后,我将该差异作为持续时间添加到当前时间(UTC),并打印结果希望是该特定国家/地区的本地时间。 由于某些原因,结果是错误的。 例如,在匈牙利 ,相差一小时。 知道为什么我 ...

7 如何在Django中将UTC时间转换为用户的本地时间

我不理解这个问题是重复的,但是不幸的是我找不到任何答案。 我的印象是,只要我有,Django就已经负责将服务器时间转换为本地用户 在我的设置中。 更重要的是,如果数据库是postgresql ,则该设置也无关紧要,并且仍然会转换所有内容。 但是我尝试了以下所有方法: 只有最后一个有效, ...

8 如何在 Django 中将 UTC 时间转换为用户的本地时间?

这些答案没有帮助: 获取正确的本地时区以在 Django Web 应用程序中为最终用户显示 同一应用程序中的Django不同时区 所有日期时间数据都以 UTC 格式存储在我的数据库中。 我希望我的每个用户都能看到他们本地时区的日期时间,而不是 UTC。 我试过下面的代码: 设置.p ...

9 在 PowerBI 中将 UTC 日期时间转换为本地日期时间

在我的 PowerBI 数据源(表存储)中,我有一个 DateTime 列,其中包含一个 UTC DateTime。 我希望将其转换为本地日期时间。 具体来说,我还想考虑夏令时。 我在网上找到了几个解决方案,但没有一个考虑到夏令时。 任何人都可以给我一些指点? 我希望用户看到的时区是 UTC+2 ...

2017-07-01 22:39:53 1 817   powerbi
10 我无法在PYTHON中将Unix时间转换为本地日期和时间

我想将UNIX时间转换为本地日期和时间。 我从服务器获取UNIX时间戳值,但是当我使用这些代码集转换UNIX时,我得到的时间比实际时间少1小时30分钟。 但是,当我获取原始时间戳数据并在联机UNIX中检入本地日期和时间转换器时,我得到了正确的时间。 谢谢 ...

2017-08-14 12:36:08 2 72   python
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM