Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何将pandas时间戳添加到数据帧post read_cvs

如何将pandas时间戳添加到数据帧post read_cvs
EN

Stack Overflow用户
提问于 2019-07-10 07:53:03
回答 2查看 109关注 0票数 3

读取cvs文件后,如何在我的数据帧中设置时间戳?我有一个带有测量值的数据集,但没有时间戳。我知道传感器数据的频率(200 Hz)和开始日期/时间。

我已经尝试计算文件中的行数,并创建了一个时间列。使用pd.insert,我插入了这个时间戳。我的问题是,在绘制这些数据时,我的x轴显示的不是属性时间戳,而是测量值的数量。我的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    #Importing signals 
    data = pd.read_csv('.../monday.txt')
    data.columns = ['l1','l2','l3','l4','l5','l6']

    print("Sensor data: ")
    print(data.head())
    print(data.dtypes)

    nbrMeasurments = sum(1 for line in open('.../monday.txt'))
    data.insert(0, "Time", pd.timedelta_range('11:24:26', 
    periods=nbrMeasurments-1, freq="5L"))

    print("Revised sensor data: ")
    print(data.head())
    print(data.dtypes)

在另一个带有时间戳的文件中,pd.read_csv('.../mondayV1.csv',index_col='Date', usecols= [0,1,2], parse_dates=True)中的"index_col=' date '“命令可以确保x轴是由日期引用的,而不是由测量值”x“引用的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
                         SYS (mmHg)  DIA (mmHg)
    Date                                       
    2019-08-07 13:06:30         111          61
    2019-08-07 13:07:08         114          64
    2019-08-07 13:07:56         112          63
    2019-08-07 13:08:42         127          81
    2019-08-07 13:09:19         129          83
    Omron data types: 
    SYS (mmHg)    int64
    DIA (mmHg)    int64

当我尝试插入没有时间戳的文件时,"Time“被列为变量:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
                 Time        l1        l2        l3        l4       l5       
    l6
    0        11:24:26  0.787261  0.943828  1.100903  0.835889  2.524946  
    2.252113
    1 11:24:26.005000  0.787068  0.943638  1.100871  0.835882  2.531180  
    2.253063
    2 11:24:26.010000  0.786951  0.943496  1.100779  0.835909  2.531573  
    2.253395
    3 11:24:26.015000  0.786879  0.943553  1.100877  0.835877  2.533841  
    2.254906
    4 11:24:26.020000  0.786682  0.943536  1.100651  0.835674  2.539893  
    2.257780
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    Time    timedelta64[ns]
    l1              float64
    l2              float64
    l3              float64
    l4              float64
    ecg             float64
    ppg             float64

如何以最有效的方式将时间分配给这个文件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-07-10 08:12:17

将值分配给索引,而不是data.insert

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
data = pd.read_csv('.../monday.txt')
data.columns = ['l1','l2','l3','l4','l5','l6']

print("Sensor data: ")
print(data.head())
print(data.dtypes)

nbrMeasurments = sum(1 for line in open('.../monday.txt'))
data.index = pd.timedelta_range('11:24:26', periods=nbrMeasurments-1, freq="5L")

#another solution
#data = data.set_index(pd.timedelta_range('11:24:26', periods=nbrMeasurments-1, freq="5L"))
print("Revised sensor data: ")
print(data.head())
print(data.index)
票数 0
EN

Stack Overflow用户

发布于 2019-07-10 08:06:39

像这样尝试data.set_index(keys="Time", inplace=True)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd
from io import StringIO

data = pd.read_csv(StringIO("""
             Time        l1        l2        l3        l4       l5       l6
0        11:24:26  0.787261  0.943828  1.100903  0.835889  2.524946  2.252113
1 11:24:26.005000  0.787068  0.943638  1.100871  0.835882  2.531180  2.253063
2 11:24:26.010000  0.786951  0.943496  1.100779  0.835909  2.531573  2.253395
3 11:24:26.015000  0.786879  0.943553  1.100877  0.835877  2.533841  2.254906
4 11:24:26.020000  0.786682  0.943536  1.100651  0.835674  2.539893  2.257780"""), sep="\s+")

data.set_index(keys="Time", inplace=True)

print(data)

输出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
                       l1        l2        l3        l4        l5        l6
Time                                                                       
11:24:26         0.787261  0.943828  1.100903  0.835889  2.524946  2.252113
11:24:26.005000  0.787068  0.943638  1.100871  0.835882  2.531180  2.253063
11:24:26.010000  0.786951  0.943496  1.100779  0.835909  2.531573  2.253395
11:24:26.015000  0.786879  0.943553  1.100877  0.835877  2.533841  2.254906
11:24:26.020000  0.786682  0.943536  1.100651  0.835674  2.539893  2.257780
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56965905

复制
相关文章
Linux Shell 脚本:如何将时间戳转换为时间
时间戳是一个用于表示某一特定时间点的数值。它通常是从某一固定时间点(通常为 "Unix 纪元",即 1970 年 1 月 1 日 00:00:00 UTC)开始计算的秒数。
运维开发王义杰
2023/09/19
2K0
Linux Shell 脚本:如何将时间戳转换为时间
7个常用的Pandas时间戳处理函数
Pandas 库中有四个与时间相关的概念 日期时间:日期时间表示特定日期和时间及其各自的时区。它在 pandas 中的数据类型是 datetime64[ns] 或 datetime64[ns, tz]。 时间增量:时间增量表示时间差异,它们可以是不同的单位。示例:"天、小时、减号"等。换句话说,它们是日期时间的子类。 时间跨度:时间跨度被称为固定周期内的相关频率。时间跨度的数据类型是 period[freq]。 日期偏移:日期偏移有助于从当前日期计算选定日期,日期偏移量在 pandas 中没有特定的数据类
数据STUDIO
2022/05/24
1.5K0
时间,时间戳
将如上的时间2016-05-05 20:28:54转换成时间戳,具体的操作过程为:
zhengzongwei
2019/07/31
5.1K0
时间戳 时间
背景 由于团队业务做的是国际项目,就无法避免一个问题--时区问题,很多业务都是跟时间有关。一些时间的对比,时间的展示,都会涉及到时区和时间戳,所以花点时间来简单总结一下 概念 时间戳 时间戳是一个自增的整数,它表示从1970年1月1日零时整的GMT时区开始的那一刻,到现在的毫秒数。假设浏览器所在电脑的时间是准确的,那么世界上无论哪个时区的电脑,它们此刻产生的时间戳数字都是一样的,所以,时间戳可以精确地表示一个时刻,并且与时区无关。 时区 时区(Time Zone)是地球上的区域使用同一个时间定义。188
千往
2018/01/24
5.8K0
Python获取当前时间戳_时间转换时间戳
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/10
9.6K0
Unix 时间戳;时间戳获取和生成
Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。
西湖醋鱼
2020/12/30
9.2K0
Linux时间戳转换_时间戳转换软件
在大多数 UNIX 系统中,当前时间存储为自特定时刻以来经过的时间以简化,将时间保持为长整数。所有 UNIX 系统普遍接受的时刻是 1970 年 1 月 1 日凌晨 12:00:00。 这称为 UNIX 时间戳,并被所有现代 UNIX/Linux 系统识别。
全栈程序员站长
2022/11/09
15.7K0
Linux时间戳转换_时间戳转换软件
Python获取时间戳_python爬虫时间戳
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/189145.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/27
5.9K0
Pandas 中最常用的 7 个时间戳处理函数
在零售、经济和金融等行业,数据总是由于货币和销售而不断变化,生成的所有数据都高度依赖于时间。如果这些数据没有时间戳或标记,实际上很难管理所有收集的数据。Python 程序允许我们使用 NumPy timedelta64 和 datetime64 来操作和检索时间序列数据。sklern库中也提供时间序列功能,但 Pandas 为我们提供了更多且好用的函数。
deephub
2022/06/04
2K0
Pandas 中最常用的 7 个时间戳处理函数
Linux时间戳转换_如何获取时间戳
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/09
13.2K0
时间戳
时间戳是自 1970 年 1 月 1 日(00:00:00 GMT)以来的秒数。它也被称为 Unix 时间戳(Unix Timestamp)。
KEVINGUO_CN
2020/03/17
3.9K0
java 时间戳字符串_Java获取当前时间戳/时间戳转换
public classApp {public static voidmain(String[] args) {//精确到毫秒//获取当前时间戳
全栈程序员站长
2022/08/11
8.4K0
linux 日期转换时间戳_将时间戳转为时间
最近项目上需要用到时间戳,查找了资源终于找到了实现方式,最后时间戳还需要转换成具体的日期格式,查阅了一些资料,还是没有找到具体的实现方式,所以这里总结一些,防止其他小伙伴就掉坑,实现是在freeRTOS系统上的,当前我在linux下尝试实现以下。
全栈程序员站长
2022/11/10
10.5K0
linux 日期转换时间戳_将时间戳转为时间
Android 获取时间戳 和时间戳转日期
获取系统时间戳 public String getTime(){ long time=System.currentTimeMillis()/1000;//获取系统时间的10位的时间戳 String str=String.valueOf(time); return str; } 、获取系统时间 long currentTime = System.currentTimeMillis(); SimpleDateFormat formatter = new SimpleDateForma
程思扬
2022/01/10
6.9K0
日期、时间、PosixTime 和时间戳数据类型
可以定义日期、时间和时间戳数据类型,并通过标准 SQL 日期和时间函数相互转换日期和时间戳。例如,可以使用 CURRENT_DATE 或 CURRENT_TIMESTAMP 作为使用该数据类型定义的字段的输入,或者使用 DATEADD、DATEDIFF、DATENAME 或 DATEPART 来操作使用该数据类型存储的日期值。
用户7741497
2022/08/02
1.8K0
时间戳转换
生成当前时间戳 root@BJ-CentOS7 ~ # date +%s 转换指定时间为时间戳 root@BJ-CentOS7 ~ # date -d "2019-01-24 14:35" +%s 转
大大大黑白格子
2020/06/10
6.1K0
如何将后端传的时间戳转化为年月日
在项目里面,涉及到时间相关问题,后端一般会传一个时间戳给前端,后端传过来的时间戳如下。 data.json
王小婷
2019/11/27
2K0
java时间戳
  时间戳是指文件属性里的创建、修改、访问时间。 数字时间戳技术是数字签名技术一种变种的应用。在电子商务交易文件中,时间是十分重要的 信息。在书面合同中,文件签署的日期和签名一样均是十分重要的防止文件被伪造和篡改的关键性内容。
Java架构师必看
2021/05/21
2.5K0
java时间戳
PHP时间戳
我们可以通过 date() 函数提供的丰富格式化来显示需要的时间日期,如下面的例子:
我不是费圆
2020/09/21
5.6K0
pandas datetime与时间戳互相转换,字符串转换datetime
to_datetime 如果传入的是10位时间戳,unit设置为秒,可以转换为datetime
lovelife110
2021/12/08
4.7K0

相似问题

如何将时间戳列添加到Pandas数据帧?

10

从pandas数据帧获取时间戳

11

基于时间戳合并pandas数据帧

113

pandas数据帧中的时间戳

18

按时间戳合并pandas数据帧

122
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文