如何在带有时区感知时间戳列的数据帧上追加数据?

亚都

我有一个带有时间戳列和数字列的数据框。如果timestamp列是时区幼稚的,我可以向其添加新行。

df = pd.DataFrame([[1,2],[3,4]], columns=['timestamp', 'number'])
df['timestamp']=pd.to_datetime(df['timestamp'])
df
#                       timestamp  number
# 0 1970-01-01 00:00:00.000000001       2
# 1 1970-01-01 00:00:00.000000003       4

df.append(df.loc[0])
#                       timestamp  number
# 0 1970-01-01 00:00:00.000000001       2
# 1 1970-01-01 00:00:00.000000003       4
# 0 1970-01-01 00:00:00.000000001       2

但是,如果我为timestamp列设置了时区,然后尝试追加新行,则会出错。

df['timestamp']=df['timestamp'].apply(lambda x: x.tz_localize('utc'))
df
#                             timestamp  number
# 0 1970-01-01 00:00:00.000000001+00:00       2
# 1 1970-01-01 00:00:00.000000003+00:00       4
df.append(df.loc[0])
# Traceback (most recent call last):
#   File "<stdin>", line 1, in <module>
#   File "/Library/Python/2.7/site-packages/pandas-0.17.1-py2.7-macosx-10.10-intel.egg/pandas/core/frame.py", line 4231, in append
#     verify_integrity=verify_integrity)
#   File "/Library/Python/2.7/site-packages/pandas-0.17.1-py2.7-macosx-10.10-intel.egg/pandas/tools/merge.py", line 813, in concat
#     return op.get_result()
#   File "/Library/Python/2.7/site-packages/pandas-0.17.1-py2.7-macosx-10.10-intel.egg/pandas/tools/merge.py", line 995, in get_result
#     mgrs_indexers, self.new_axes, concat_axis=self.axis, copy=self.copy)
#   File "/Library/Python/2.7/site-packages/pandas-0.17.1-py2.7-macosx-10.10-intel.egg/pandas/core/internals.py", line 4456, in concatenate_block_managers
#     for placement, join_units in concat_plan]
#   File "/Library/Python/2.7/site-packages/pandas-0.17.1-py2.7-macosx-10.10-intel.egg/pandas/core/internals.py", line 4561, in concatenate_join_units
#     concat_values = com._concat_compat(to_concat, axis=concat_axis)
#   File "/Library/Python/2.7/site-packages/pandas-0.17.1-py2.7-macosx-10.10-intel.egg/pandas/core/common.py", line 2548, in _concat_compat
#     return _concat_compat(to_concat, axis=axis)
#   File "/Library/Python/2.7/site-packages/pandas-0.17.1-py2.7-macosx-10.10-intel.egg/pandas/tseries/common.py", line 256, in _concat_compat
#     return DatetimeIndex(np.concatenate([ x.tz_localize(None).asi8 for x in to_concat ]), tz=list(tzs)[0])
# AttributeError: 'numpy.ndarray' object has no attribute 'tz_localize'

我将对如何将新行附加到具有时区感知timesamp列的数据帧提供任何帮助,将不胜感激。

漂亮的演讲

这是该熊猫版本中的一个错误(此答案的信用)。如他们所说,您的解决方案可以是:

df = df.astype(str).append(df.loc[0].astype(str))
df['timestamp'] = pd.to_datetime(df['timestamp'], utc=True)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何创建带有增加的时间戳列的数据帧?

来自分类Dev

带有时区的pyspark时间戳

来自分类Dev

如何在PHP中获取带有时区的ISO 8601格式的时间戳

来自分类Dev

如何在PHP中获取带有时区的ISO 8601格式的时间戳

来自分类Dev

如何使用 ActiveRecord 过滤带有时区列的时间戳

来自分类Dev

分组数据帧以获取带有时间戳排序的最新消息

来自分类Dev

带有时间戳的pandas数据帧插入mysql的问题

来自分类Dev

如何从带有时间戳的熊猫数据框中删除未更改的值?

来自分类Dev

如何记录带有时间戳的串行数据?

来自分类Dev

如何将带有时区的时间转换为时间戳?

来自分类Dev

如何在 PHP 中将没有时区的 ISO 8601 时间戳转换为带时区的 ISO 8601 时间戳?

来自分类Dev

Teradata 14:带有时区问题的时间戳

来自分类Dev

PostgreSQL选择带有时区的时间戳,但忽略秒

来自分类Dev

在Rails 3.2中存储带有时区的时间戳

来自分类Dev

如何在 postgres 中将没有时区列的时间戳更改为 text、varchar 和 long

来自分类Dev

如何使用PostgreSQL将间隔转换为带有时区的时间戳?

来自分类Dev

如何从具有时间戳列的数据库表中检索

来自分类Dev

如何在Oracle中将带有某些服务符号的字符串转换为带有时区的时间戳?

来自分类Dev

在时间戳上组合来自不同数据帧的列

来自分类Dev

保存带有时间戳的实时视频帧

来自分类Dev

如何在PostgreSQL中减去没有时区的时间戳

来自分类Dev

如何在DD-MM-YYYY中使用时间戳将Pyspark行datetime.datetime数据帧转换为具有时间戳的列名DateType

来自分类Dev

如何显示没有时区的时间戳

来自分类Dev

ORACLE将DATE转换为带有时间戳的时区的时间戳

来自分类Dev

将列类型从没有时区的时间戳更改为有时区的时间戳

来自分类Dev

带有时间戳的mysql数据库中时间序列的最佳索引策略

来自分类Dev

如何在Postgres中更改表格以显示带有时区缩写的时间戳(2004-10-19 10:23:54 EST)

来自分类Dev

如何将带有时区的奇怪日期时间字符串转换为时间戳(PySpark)

来自分类Dev

熊猫数据框-如何为现有日期列综合添加唯一的时间戳,该时间戳只包含日期而没有时间?

Related 相关文章

  1. 1

    如何创建带有增加的时间戳列的数据帧?

  2. 2

    带有时区的pyspark时间戳

  3. 3

    如何在PHP中获取带有时区的ISO 8601格式的时间戳

  4. 4

    如何在PHP中获取带有时区的ISO 8601格式的时间戳

  5. 5

    如何使用 ActiveRecord 过滤带有时区列的时间戳

  6. 6

    分组数据帧以获取带有时间戳排序的最新消息

  7. 7

    带有时间戳的pandas数据帧插入mysql的问题

  8. 8

    如何从带有时间戳的熊猫数据框中删除未更改的值?

  9. 9

    如何记录带有时间戳的串行数据?

  10. 10

    如何将带有时区的时间转换为时间戳?

  11. 11

    如何在 PHP 中将没有时区的 ISO 8601 时间戳转换为带时区的 ISO 8601 时间戳?

  12. 12

    Teradata 14:带有时区问题的时间戳

  13. 13

    PostgreSQL选择带有时区的时间戳,但忽略秒

  14. 14

    在Rails 3.2中存储带有时区的时间戳

  15. 15

    如何在 postgres 中将没有时区列的时间戳更改为 text、varchar 和 long

  16. 16

    如何使用PostgreSQL将间隔转换为带有时区的时间戳?

  17. 17

    如何从具有时间戳列的数据库表中检索

  18. 18

    如何在Oracle中将带有某些服务符号的字符串转换为带有时区的时间戳?

  19. 19

    在时间戳上组合来自不同数据帧的列

  20. 20

    保存带有时间戳的实时视频帧

  21. 21

    如何在PostgreSQL中减去没有时区的时间戳

  22. 22

    如何在DD-MM-YYYY中使用时间戳将Pyspark行datetime.datetime数据帧转换为具有时间戳的列名DateType

  23. 23

    如何显示没有时区的时间戳

  24. 24

    ORACLE将DATE转换为带有时间戳的时区的时间戳

  25. 25

    将列类型从没有时区的时间戳更改为有时区的时间戳

  26. 26

    带有时间戳的mysql数据库中时间序列的最佳索引策略

  27. 27

    如何在Postgres中更改表格以显示带有时区缩写的时间戳(2004-10-19 10:23:54 EST)

  28. 28

    如何将带有时区的奇怪日期时间字符串转换为时间戳(PySpark)

  29. 29

    熊猫数据框-如何为现有日期列综合添加唯一的时间戳,该时间戳只包含日期而没有时间?

热门标签

归档