读取文件中时间戳

文章介绍了如何使用Python读取TopRight_20230803.txt文件,提取Timestamp列数据,计算信号事件数量、直方图分布以及每秒信号事件速率,并讨论了统计不确定性的估计。
摘要由CSDN通过智能技术生成

题目 

1.下载数据文件“TopRight_20230803.txt”从第二讲的材料区域了解课程软件。下载后的文件应该是70MB左右的大。编写一个Python脚本,读取数据文件的所有行,并将“TimeStamp【ms】”列的值存储在数组中。TimeStamp列是数据行中的第4列。
2.数组有多少个元素(这是数据文件中的信号事件的数量)?
a.约10
b.约10000
c.约760000
3.将TimeStamp值填充到具有100个箱的一维直方图中。你看到的分布是什么形状?
a.近似平坦
b.近似高斯c.近似指数
4.TimeStamp值,以毫秒为单位,指示在时间t=0s之后每个信号事件发生的时间。最后一个TimeStamp的值提供收集数据的总持续时间。大约每秒的信号事件速率是多少?
a.每秒约0.5
b.大约每秒2.4c.每秒约120
5.基于TimeStamp信息,每秒信号事件的平均速率的相对统计不确定性是多少?
a.约1%
b.约0.1%
c.约0.01%
d.没有足够的信息

代码1

time_stamps = []

with open("TopRight_20230803.txt", "r") as file:
    for line in file:
        data = line.split()
        time_stamp = float(data[3])
        time_stamps.append(time_stamp)

import matplotlib.pyplot as plt

plt.hist(time_stamps, bins=100)
plt.xlabel("TimeStamp")
plt.ylabel("Frequency")
plt.show()

效果 

参考

对于第四个问题,我没实现啊,有点懒

下面有代码作为参考

import numpy as np


num_rows = 11
num_cols = 8

with open('data_HW1.txt','r') as f:
    lines = f.readlines()
    columns = [[] for i in range(num_cols)]
    for line in lines[1:]:
        numbers = line.strip().split('\t')
        for i ,number in enumerate(numbers):
            columns[i].append(float(number))


    for i,column in enumerate(columns):
        print(f'{i}-th column')
        print('std:',np.std(column))
        print('avg',sum(column)/len(column))

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值