当前位置: 首页 > 面试题库 >

用熊猫转换Excel样式日期

华乐逸
2023-03-14
问题内容

我必须解析一个XML文件,该文件为我提供Excel样式的日期时间。例如:42580.3333333333

熊猫是否提供将该数字转换为常规datetime对象的方法?


问题答案:

好的,我认为最简单的方法是TimedeltaIndex从浮点数构造a并将其添加到以下标量日期时间中1900,1,1

In [85]:
import datetime as dt
import pandas as pd
df = pd.DataFrame({'date':[42580.3333333333, 10023]})
df

Out[85]:
           date
0  42580.333333
1  10023.000000

In [86]:
df['real_date'] = pd.TimedeltaIndex(df['date'], unit='d') + dt.datetime(1900,1,1)
df

Out[86]:
           date                  real_date
0  42580.333333 2016-07-31 07:59:59.971200
1  10023.000000 1927-06-12 00:00:00.000000

好的,似乎Excel的日期有点奇怪,谢谢@ayhan:

In [89]:
df['real_date'] = pd.TimedeltaIndex(df['date'], unit='d') + dt.datetime(1899, 12, 30)
df

Out[89]:
           date                  real_date
0  42580.333333 2016-07-29 07:59:59.971200
1  10023.000000 1927-06-10 00:00:00.000000


 类似资料:
  • 问题内容: 我已经读过一个对Pandas的SQL查询,并且值以dtype’object’的形式出现,尽管它们是字符串,日期和整数。我能够将日期“ object”转换为Pandas datetime dtype,但是在尝试转换字符串和整数时遇到错误。 这是一个例子: 将转换为日期时间可以: 但是尝试将转换为整数时出现错误: 注意:我尝试时遇到类似的错误 当尝试转换为字符串时,似乎什么也没有发生。 问

  • 我有一个字段在熊猫DataFrame被导入为字符串格式。它应该是日期时间变量。如何将其转换为日期时间列,然后根据日期进行筛选。 示例: 数据帧名称:原始数据

  • 问题内容: 考虑到python中的pandas数据帧具有名为integer类型的列,我可以使用以下指令将其转换为格式。 因此,该列现在具有以下条目:。 将字符串恢复为整数时间戳值(代表从过去的秒数)的命令是什么? 我检查了但找不到转换实用程序,因此无法使用它。 此转换有实用程序吗? 问题答案: 您可以使用类型转换为int并将其除以以获取unix纪元开始的秒数。

  • 我试图使用pandas.to_datetime()将只包含小时、分钟和秒的日期列转换为日期时间形式。但是,它会自动添加年份和日期。我还尝试使用pandas.to_datetime(df["time"],format = % H:% M:% S ")dt . time,数据类型仍然是object。有没有什么方法可以变成不带年份和日期的datetime格式?

  • 我有一个大熊猫时间帧,它有一个列,这个时间格式:例如(小时,分钟,秒)。这些值是通过熊猫从我的SQL数据库中提取的,具有以下查询函数 我想将这些时间值转换为分钟(或秒),因为我想对作为我的持续时间变量的值执行线性回归。我该怎么做呢?是否有一种方法可以将这些值(例如,将<code>14:30:00 示例数据帧:

  • 我有一个非常大的pyspark.sql.dataframe.dataframe名为df。我需要一些枚举记录的方法--因此,能够访问具有特定索引的记录。(或选择具有索引范围的记录组) 在熊猫身上,我可以 null > 为什么不起作用,如何使其起作用?如何向DataFrame添加行? 以后制作类似: 有没有更快更简单的处理方法?