使用 df['Time'] = pd.to_datetime(phData['Time'], format='%H:%M:%S') 后,从 1900-01-01 开始的日期被添加到我的“时间”中

2024-07-04

我是一名自学的程序员(大约一年了,所以很新)。这是我的数据

phData = pd.read_excel('phone call log & duration.xlsx')
called from called to   Date    Time    Duration in (sec)
0   7722078014  7722012013  2017-07-01  10:00:00    303
1   7722078014  7722052018  2017-07-01  10:21:00    502
2   7722078014  7450120521  2017-07-01  10:23:00    56

The dtypes are:
called from                   int64
called to                     int64
Date                 datetime64[ns]
Time                         object
Duration in (sec)             int64
dtype: object

phData['Time'] = pd.to_datetime(phData['Time'], format='%H:%M:%S')


phData.head(2)

called from called to   Date    Time    Duration in (sec)
0   7722078014  7722012013  2017-07-01  1900-01-01 10:00:00 303
1   7722078014  7722052018  2017-07-01  1900-01-01 10:21:00 502

我已经设法将“时间”更改为 datetime64[ns] 但不知何故添加了日期?我不知道从哪里来?我希望能够分析Date and Time使用 Pandas 我很乐意这样做。探索日期和时间、频率等之间的调用。我想我也可以保存它,这样它就可以在 Orange3 中工作。但 Orange3 不会将 Time 识别为时间格式。我试过剥离1900-01-01但得到一个错误,说它只能在一个对象的情况下完成。我认为时间不是datetime but a datetime.time???我不确定为什么这很重要以及如何简单地拥有 2columns one Date和另一个Time,Pandas 会帮我识别并进行挖掘。我看过无数的帖子,这就是我找到如何使用的地方pd.to_datetime我的问题可能是datetime.time但我被困在这之后。


Pandas 没有像 Time 这样的数据类型。你可以有datetime or timedelta dtype.

Option 1:将日期和时间合并到单列中:

In [23]: df['TimeStamp'] = pd.to_datetime(df.pop('Date') + ' ' + df.pop('Time'))

In [24]: df
Out[24]:
   called from   called to  Duration in (sec)           TimeStamp
0   7722078014  7722012013                303 2017-07-01 10:00:00
1   7722078014  7722052018                502 2017-07-01 10:21:00
2   7722078014  7450120521                 56 2017-07-01 10:23:00

Option 2: 转变Date to datetime and Time to timedelta dtype:

In [27]: df.Date = pd.to_datetime(df.Date)

In [28]: df.Time = pd.to_timedelta(df.Time)

In [29]: df
Out[29]:
   called from   called to       Date     Time  Duration in (sec)
0   7722078014  7722012013 2017-07-01 10:00:00                303
1   7722078014  7722052018 2017-07-01 10:21:00                502
2   7722078014  7450120521 2017-07-01 10:23:00                 56

In [30]: df.dtypes
Out[30]:
called from                    int64
called to                      int64
Date                  datetime64[ns]
Time                 timedelta64[ns]
Duration in (sec)              int64
dtype: object
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 df['Time'] = pd.to_datetime(phData['Time'], format='%H:%M:%S') 后,从 1900-01-01 开始的日期被添加到我的“时间”中 的相关文章

  • matlab的imregionalmax()和scipy.ndimage.filters.maximum_filter有什么区别

    我需要找到图像的区域最大值以获得用于分水岭分割的前景标记 我在 matlab 中看到使用该函数imregionalmax http www mathworks com help images ref imregionalmax html 由
  • 使用 Matplotlib 创建箱线图

    我正在使用 python 3 和 jupyter 笔记本 我有一个 pandas 数据框 其结构如下 location price Apr 25 ASHEVILLE 15 0 Apr 25 ASHEVILLE 45 0 Apr 25 ASH
  • 从Python运行Scrapy

    我正在尝试从 Python 运行 Scrapy 我正在查看这段代码 source http doc scrapy org en 0 16 topics practices html from twisted internet import
  • Python下载具有特定文件名的youtube

    我正在尝试下载 youtube 视频pytube这边走 from pytube import YouTube YouTube http youtube com watch v 9bZkp7q19f0 streams first downlo
  • Pandas DataFrame 到列表列表

    将列表列表转换为 pandas 数据框很容易 import pandas as pd df pd DataFrame 1 2 3 3 4 5 但是如何将 df 转回列表列表呢 lol df what to do now print lol
  • python 中的神经网络:决策/分类总是给出 0.5

    首先我想说我是一个Python初学者 对神经网络也是完全陌生的 当我读到它时 我非常兴奋 并认为我从头开始设置了一些代码 参见下面的代码 但不知怎的 我的代码无法正常工作 我猜想存在一些重大错误 在算法和编程中 但我现在找不到他们 所以 在
  • 从子列表中切片元素 - Python

    我想从中返回数字 5 list 1 1 2 3 4 5 6 我以为这会起作用 但事实并非如此 print list 1 1 1 它返回一个空列表 它是索引 1 第二个列表 和位置 1 列表中的第二个数字 这不应该起作用吗 您需要两个单独的操
  • Pandas:处理测试中看不见的数据

    我有一个训练数据集 正在构建一些机器学习模型 我无权访问测试集 并且想要处理在训练中未观察到测试中的分类特征之一的可能性 这是一个玩具示例 说明了我的意思 我有一个数据框 old 像这样 old pd DataFrame car Audi
  • Python将html ascii编码文本转换为utf8

    我有一个 xml 文件 需要将其转换为 utf8 不幸的是 这些实体包含这样的文本 047 mytext 044 我正在使用编解码器库将文件转换为 utf8 但 html 实体无法使用它 有没有一种简单的方法可以摆脱html编码 Thank
  • IDA Python - 为什么我的代码返回不正确的 ESP 值?

    我制作了一个 ida python 代码 用于检查代码覆盖率 但是当我使用这个脚本时 我遇到了运行时错误 并且无法获得正确的 ESP 值 我的代码 from idaapi import class DbgHook DBG Hooks def
  • Python:多 QQ 绘图

    我是新人 通常来自 R 我想创建一个包含多行的 QQ Plot 我有一个测试版分布式数据集 我想尝试不同的 beta 分布参数并在oneQQ Plot 以便更好地进行比较 如果我尝试下面的代码 每个图都有相同的颜色 并且我得到 3 条 QQ
  • BeautifulSoup 3.1 解析器太容易崩溃

    我在使用 BeautifulSoup 解析一些不可靠的 HTML 时遇到了麻烦 事实证明 新版本中使用的 HTMLParser 的容忍度低于以前使用的 SGMLParser BeautifulSoup 有某种调试模式吗 我正在尝试找出如何阻
  • 解析srt字幕

    我想解析srt字幕 1 00 00 12 815 gt 00 00 14 509 Chlapi jak to jde s t ma pracovn ma sv tlama 2 00 00 14 815 gt 00 00 16 498 Tro
  • 如何从python3中的单行输入读取整数数组

    我想从 python3 中的单行输入读取整数数组 例如 将此数组读取到变量 列表 1 3 5 7 9 我尝试过的 arr input split 但这不会将它们转换为整数 它创建字符串数组 arr input split for i val
  • Lightgbm OSError,库未加载

    如果我简单地这样做 import lightgbm as lgb 我越来越 python script py Traceback most recent call last File script py line 4 in
  • SWIG Python 结构体数组

    我已经搜索了几天 试图弄清楚如何将结构数组转换为 Python 列表 我有一个函数返回指向数组开头的指针 struct foo int member struct foo bar struct foo t malloc sizeof str
  • 使用 Python 3 在 Mac 上没有名为“_tkinter”的模块

    我正在尝试使用 Tkinter 作为 GUI 将我的脚本捆绑到 app 中 而执行捆绑的包装器是 Platypus 当我去运行该应用程序时 我收到此错误 Traceback most recent call last File Users
  • 来自 Abaqus/CAE 的 Python 多处理

    I am using a commercial application called Abaqus CAE1 with a built in Python 2 6 interpreter and API I ve developed a l
  • Python 与 Hive 的连接

    我安装了 Hortonworks Hive ODBC 驱动程序并在数据源中创建了连接 我测试了它并且成功了 我安装了PyODBC并编写了以下代码 import os sys pyodbc con pyodbc connect DSN MyC
  • 在Python中返回外部函数错误

    这就是问题 给定以下 Python 程序 假设用户从键盘输入数字 4 返回的值是多少 N int input enter a positive integer counter 1 while N gt 0 counter counter N

随机推荐