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

Python / Pandas仅将字符串转换为时间

柯立果
2023-03-14
问题内容

我在Python 2.7中具有以下Pandas数据框。

import pandas as pd
trial_num = [1,2,3,4,5]
sail_rem_time = ['11:33:11','16:29:05','09:37:56','21:43:31','17:42:06']
dfc = pd.DataFrame(zip(*[trial_num,sail_rem_time]),columns=['Temp_Reading','Time_of_Sail'])
print dfc

数据框如下所示:

  Temp_Reading Time_of_Sail
             1     11:33:11
             2     16:29:05
             3     09:37:56
             4     21:43:31
             5     17:42:06

该数据框来自 .csv文件。我使用熊猫作为熊猫数据框读取 .csv文件。当我使用print dfc.dtypes它时,它表明该列Time_of_Sail具有数据类型object。我想将此列转换为datetime数据类型,但我只想要时间部分-
我不需要年,月,日。

我可以尝试这样:

dfc['Time_of_Sail'] = pd.to_datetime(dfc['Time_of_Sail'])
dfc['Time_of_Sail'] = [time.time() for time in dfc['Time_of_Sail']]

但问题是,当我运行print dfc.dtypes它仍然显示该列Time_of_Sailobject

有没有办法将此列转换为只有时间的日期时间格式?

附加信息:

要创建上述数据框并输出,这也可以工作:

import pandas as pd
trial_num = [1,2,3,4,5]
sail_rem_time = ['11:33:11','16:29:05','09:37:56','21:43:31','17:42:06']
data = [
    [trial_num[0],sail_rem_time[0]],
    [trial_num[1],sail_rem_time[1]],[trial_num[2],sail_rem_time[2]],
    [trial_num[3],sail_rem_time[3]]
    ]
dfc = pd.DataFrame(data,columns=['Temp_Reading','Time_of_Sail'])
dfc['Time_of_Sail'] = pd.to_datetime(dfc['Time_of_Sail'])
dfc['Time_of_Sail'] = [time.time() for time in dfc['Time_of_Sail']]
print dfc
print dfc.dtypes

问题答案:

这两行:

dfc['Time_of_Sail'] = pd.to_datetime(dfc['Time_of_Sail'])
dfc['Time_of_Sail'] = [time.time() for time in dfc['Time_of_Sail']]

可以写成:

dfc['Time_of_Sail'] = pd.to_datetime(dfc['Time_of_Sail'],format= '%H:%M:%S' ).dt.time


 类似资料:
  • 问题内容: 例如字符串: 我将把它们推回到数据库中正确的日期时间字段中,因此我需要将它们魔术化为实际的日期时间对象。 这是通过Django的ORM进行的,因此我无法使用SQL进行插入时的转换。 问题答案: 是将字符串解析为日期时间的主要例程。它可以处理各种格式,格式由你为其指定的格式字符串确定: 生成的对象是时区未使用的。 链接: 适用于strptime:Python 2和Python 3的 Py

  • 问题内容: 我正在研究python和网络。 肯定是在听。但这似乎需要转换为文本字符串。 我见过有人使用 struct.unpack() ,但是我不确定它是如何工作的。转换方式是什么? 问题答案: 您从中得到的是一个字符串: 从套接字接收数据。返回值是一个字节对象,表示接收到的数据。 在Python 3.x中,要将字符串转换为Unicode文本字符串,您必须知道该字符串使用什么字符集编码,因此可以调

  • 问题内容: 每当我致电时,都会收到以下错误消息: 还有其他方法可以将ElementTree对象转换为XML字符串吗? 追溯: 问题答案: 对象没有方法。挂断该电话,该电话将正常工作: 仅当有实例时才需要使用。 其他说明: 这将产生一个 bytestring ,在Python 3中是该类型。 如果必须有一个对象,则有两个选择: 从UTF-8解码结果字节值: 使用; 这样可以避免编码/解码周期: 如果

  • 问题内容: 我正在使用以下代码从外部程序获取标准输出: 方法返回一个字节数组: 但是,我想将输出作为普通的字符串使用。这样我就可以像这样打印它: 我认为这就是方法的用途,但是当我尝试使用它时,我又得到了相同的字节数组: 如何将字节值转换回字符串?我的意思是,使用”batteries”而不是手动进行操作。我希望它与Python 3兼容。 问题答案: 你需要解码bytes对象以产生一个字符串:

  • 问题内容: 我在pandas数据框中的某个列的类型有问题。基本上,该列以字符串形式保存在csv文件中,我想将其用作元组,以便能够将其转换为数字列表。接下来是一个非常简单的csv: 如果使用函数“ read_csv”加载它,则会得到字符串列表。我试图转换为列表,但是得到了字符串的列表版本: 返回: 关于如何做到这一点的任何想法吗? 谢谢。 问题答案: 您可以使用,这将给您一个元组: 如果确实需要列表

  • 我喜欢用熊猫导入数据集,这是我的代码: Col10列包含字符串值,可以让我知道web访问的持续时间 2分35秒。我喜欢做的是将此列作为时间格式导入,以测量(以秒或分钟为单位)网络访问的持续时间。