1

在项目期间,我不得不处理一个 TDMS 文件。我问是因为无法立即读取文件。

我的目标:通过将 TDMS 文件转换为 DataFrame 格式进行分析

第一次尝试,使用 npTdms 包执行 TdmsFile 打开。- 转换为 read_data() 以执行 pd.DataFrame 命令。

from nptdms import TdmsFile, TdmsWriter, ChannelObject, GroupObject
filenameS = "ex.tdms"
tdms_file = TdmsFile(filenameS)

[enter image description here][1]

所以我使用 TdmsFile.open() 命令成功加载。

但我在第二次尝试时尝试了 read_data()并检查了错误。

csv_merge = pd.DataFrame()
for i in tdms_file.group_channels('Analog Data'):
temp = i.read_data()
csv_merge = pd.concat([csv_merge, pd.DataFrame({i.channel: temp})], axis=1)

在此处输入图像描述

最后一次尝试

tdms_file = TdmsFile.open(filenameS)
df = tdms_file.as_dataframe()

在此处输入图像描述

4

2 回答 2

0

给你=^..^=

from nptdms import TdmsFile
import pandas as pd

# load file
tdms_file = TdmsFile('20200609_130131.69.tdms')
# show groups
groups_data = tdms_file.groups()
print(groups_data)
# show channels
channels_data = tdms_file['group name'].channels()
print(channels_data)
# show data in channel
selected_data = tdms_file['group name']['channel name']
print(selected_data.data)

# load into df
df = pd.DataFrame(data=selected_data.data)

df 输出:

0  0.000000
1  0.111111
2  0.222222
3  0.333333
4  0.444444
5  0.555556
6  0.666667
7  0.777778
8  0.888889
9  1.000000
于 2020-07-24T06:48:55.337 回答
0

我不知道..

在此处输入图像描述

所以,我使用 TdmsFile.open() 命令完成了它。然后出现错误 在此处输入图像描述

于 2020-07-24T07:09:35.320 回答