博客
关于我
Python:设定采样周期提取Excel数据
阅读量:781 次
发布时间:2019-03-24

本文共 1449 字,大约阅读时间需要 4 分钟。

1 博客内容

对于CANape采集的数据(MF4/MDF格式),调入Simulink或者AMEsim分析,由于CANape中各信号取样频率不一致,导致文件转化为CSV文件后需要分段提取数据。例如,原始采样频率为3ms和5ms,分析时统一使用0.01s步长,通过数据处理可以提升分析软件的效率。

2 数据提取

年前内部对软件进行白名单处理,偶然发现AMEsim库目录树中的HOT,编译时会调用Python.exe。而使用Python时无需单独安装,可以直接使用现成的Python环境进行操作。以下分享使用Python提取分段时间数值(设定采样周期)的源程序。

TSheet.csv文件

思路是,当某行第一列的数值大于0.01*m时,输出该行第二列的数值,同时m += 1。

源代码
"""    名称:  Translation.py    作者:  Morven_Xie    版本:  1.0    时间:  2020/3/19 20:08    功能:  定周期提起csv格式文件数据    简介:  每隔10ms提取一次数据    Email:  morven_xie@163.com"""# -*- coding:utf-8 -*-import csvfile = open("Data.csv", "w",newline='')    #不用newline时出现空行writer = csv.writer(file)writer.writerow(('Time(s)', 'Current(A)'))   #单独列时(["Current"])with open('C:\\Users\\Administrator\\Desktop\\Python\\TSheet.csv', 'r', encoding='gbk') as csvfile:    reader = csv.reader(csvfile)    j = 0    k = 0    for i, rows in enumerate(reader):        if i == j:            row = rows            j = j + 1            if float(row[0]) > abs(0.01 *k):                m = 0.01 *k                k += 1                print(row[1])                writer.writerow((m, row[1]))file.close()

输出结果展示如下:

Data.csv

CSV作为Python自带模块,不需要PIP安装即可使用。

相关注意事项

  • 确保CSV文件的第一列包含有效的时间戳
  • 周期正确设置为目标分析周期
  • 处理后的CSV文件需谨慎管理与原文件脱节

相关技术支持:morven_xie@163.com

转载地址:http://inekk.baihongyu.com/

你可能感兴趣的文章
Objective-C实现all combinations所有组合算法(附完整源码)
查看>>
Objective-C实现all permutations所有排列算法(附完整源码)
查看>>
Objective-C实现all subsequences所有子序列算法(附完整源码)
查看>>
Objective-C实现AlphaNumericalSort字母数字排序算法(附完整源码)
查看>>
Objective-C实现alternate disjoint set不相交集算法(附完整源码)
查看>>
Objective-C实现alternative list arrange备选列表排列算法(附完整源码)
查看>>
Objective-C实现An Armstrong number阿姆斯特朗数算法(附完整源码)
查看>>
Objective-C实现anagrams字谜算法(附完整源码)
查看>>
Objective-C实现ApproximationMonteCarlo蒙特卡洛方法计算pi值算法 (附完整源码)
查看>>
Objective-C实现area under curve曲线下面积算法(附完整源码)
查看>>
Objective-C实现arithmetic算术算法(附完整源码)
查看>>
Objective-C实现armstrong numbers阿姆斯壮数算法(附完整源码)
查看>>
Objective-C实现articulation-points(关键点)(割点)算法(附完整源码)
查看>>
Objective-C实现atoi函数功能(附完整源码)
查看>>
Objective-C实现average absolute deviation平均绝对偏差算法(附完整源码)
查看>>
Objective-C实现average mean平均数算法(附完整源码)
查看>>
Objective-C实现average median平均中位数算法(附完整源码)
查看>>
Objective-C实现average mode平均模式算法(附完整源码)
查看>>
Objective-C实现avl 树算法(附完整源码)
查看>>
Objective-C实现AvlTree树算法(附完整源码)
查看>>