def start_read(self): file_type_match = match(r'^(.+)(\.)(\w*)$', self.file_path) file_type = file_type_match.group(3) file_type = file_type.lower() # 小写 if file_type == 'csv': try: self.csv_data_ful = read_csv(self.file_path, low_memory=False) # utf-8默认编码 except UnicodeDecodeError: self.csv_data_ful = read_csv(self.file_path, encoding='gb18030') # gb18030中文编码 elif file_type == 'xls' or file_type == 'xlsx': self.csv_data_ful = read_excel(self.file_path) elif file_type == 'mdf' or file_type == 'dat': self.mdf_data = mdfreader.mdf(self.file_path) self.mdf_data.convertToPandas(self.resample_rate) data_ful = self.mdf_data['master_group'] data_ful['time'] = (data_ful.index-data_ful.index[0]).astype('timedelta64[ms]')/1000 self.csv_data_ful = data_ful self.file_columns_orig = self.csv_data_ful.columns back_up_counter = 0 for i in self.csv_data_ful.columns: # 去除'[]'号,防止控件命名问题 try: ma = match(r'^([0-9a-zA-Z/:_.%\u4e00-\u9fa5\-]+)(\[?)([0-9a-zA-Z/:_.%\u4e00-\u9fa5\[\]\-]*)$', i) self.file_columns.append(ma.group(1)) except AttributeError: back_up_counter += 1 self.file_columns.append('signal' + str(back_up_counter) + '_with_unknown_char')
from mdfreader import mdfreader filePath = 'C:\mdf\\Normal\\DH_N16-04-143_BM-15C-0191_1937_4_20170320081602_CAN_20170320081229_71173_mdf.dat' fileExportPath = filePath + '.csv' filePath1 = 'C:\\mdf\\Normal\\DH_N13-10-264_BM-15C-0011_181_39_20161128180303_CAN_20161128165509_13766.dat' filePath2 = 'C:\\mdf\\IG_N16-08-143_BM-15C-0048_2181_4_20170111154033_CAN_20170111042501_75701_mdf.dat' directory = 'D:\\업무폴더\\02. 분석\\2-1. 센서데이터 분석\\02. 데이터\\1. 이상충격 데이터\\정상데이터\\KMHGN41EBHU162293\\' fileName = 'DH_N16-04-143_BM-15C-0191_1937_4_20170320081602_CAN_20170320081229_71173_mdf.dat' filePath = directory + fileName ########################################################################### # loads whole mdf file content in yop mdf object ########################################################################### yop = mdfreader.mdf(filePath) # loads whole mdf file content in yop mdf object keydic = yop.keys() # list channels names ########################################################################### # Extract certain Channel data using getChannelData ########################################################################### vs = yop.getChannelData('VS').astype(int) yop.exportToCSV(fileExportPath) # Time Chaneel Get #timeChannel = RJ.getChannelMaster('VS') yop.masterChannelList # master channel list yop.resample('0.1', 'TimeChannel_392') yop.masterChannelList.get('TimeChannel_392') yop.getChannelData('TQ_STND')
import matplotlib.pyplot as plt from mdfreader import mdfreader test = mdfreader.mdf("/home/6546788/MDF/160520_DH PE CPA TMS 소음및진동.dat")
import sys import os.path from mdfreader import mdfreader print sys.argv[1] qt = sys.argv[1] print("start") filepath = '/home/6546788/MDF/%s' % qt print(filepath) filepathToCsv = filepath + '.csv' print(filepathToCsv) file = mdfreader.mdf(filepath) file.keys() file.exportToCSV(filepathToCsv) print("end")