在什么地方写tdm.txt文件。TDMS文件结构具有由numpy数组格式的通道组成的组。我正试图找出最快的方法来遍历组和频道,并将它们转换为“表”格式。我有一个可行的解决方案,但我认为这并不快。在
我的代码片段(其中文件已打开到tdms变量和groups变量)是该.tdms文件中的组列表。代码循环遍历组,并将该组中的通道列表打开到channels变量。为了得到数字阵列来自频道的数据您使用频道[list index].data。然后我就用column_ntustack逐个将通道添加到“table”格式,并用np.savetxt文件. 有没有更快的方法?在
for i in range(len(groups)):
output = filepath+"\\"+str(groups[i])+".txt"
channels = tdms.group_channels(groups[i]) #list of channels in i group
data=channels[0].data #np.array for first index in channels list
for i in range(1,len(channels)):
data=np.column_stack((data,channels[i].data))
np.savetxt(output,data,delimiter="|",newline="\n")
通道数据为一维阵列。长度=6200
^{pr2}$
我认为您可以通过以下方式简化
column_stack
应用程序:我认为这不会节省时间
你的数据是这样的吗?在
^{pr2}$savetxt
遍历data
的行,执行格式化并对每个行进行写入。在由于输出的每一行都由来自
channels
的每个数据点组成,我认为您必须像这样组装一个2d数组。你必须迭代channels
来做(假设它们是不可矢量化的对象)。在在
data
的行中循环并编写自己的行似乎没有任何好处。savetxt
是相对简单的Python代码。在对于相同大小的1d数组,这种构造更简单,使用基本的
np.array
更快:相关问题 更多 >
编程相关推荐