Python:设定采样周期提取Excel数据

1 博客内容

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

2 数据提取

      年前内部对软件进行白名单处理,碰巧发现AMEsim库目录树中的HOT,进行编译时调用Python.exe,使用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 csv

file = 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。

>> 更多相关内容,点击Morven_Xie博客概览

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值