我正在尝试读取一个相对较大的TDMS文件(LabVIEW),并且遇到了一些困难。该文件是一个50x50矩阵(2500元素),有两个主要变量: ROT在垂直方向,L在水平方向。如果您使用excel打开TDMS,则如下所示。
此外,信息数据在这里:
我一直使用的代码如下:
import numpy as np
pip install npTDMS
from nptdms import TdmsFile as td
import pandas as pd
def read_tdms(path):
#Init of the dataframe
df=pd.DataF
我已经阅读了非常大的tdms文件,其中包含传感器数据到numpy数组的列表中。结构如下:来自多个文件的数据存储在一个名为file_data的对象的实例中。对象对每种传感器类型都有属性,这些属性基本上是numpy数组的列表(该传感器类型的每个传感器都有一个)。
我想知道我在这里存储了多少数据(因为Labview生成的tdms文件的大小和所有元数据似乎都没有多大意义)。
这是代码:
# Check memory
total = 0
file_data = [file_data1, file_data2, ...] # list of data objects read from six files
我在一个源文件夹中有多个TDMS文件。我使用下面的代码从这些文件中读取元数据,现在可以很好地工作了。但是,为了改进我的代码,我想将所有这些文件合并到一个excel文件中,每次我收到新的TDMS文件并运行我的代码时,元数据都会添加到我的Excel工作表的底部。 这是我现在拥有的代码: from nptdms import TdmsFile as td
import os
import pandas as pd
source = 'c:\data\AM\Desktop\location'
for file in os.listdir(source):
if file
我想将一个满是TDMS文件的文件夹1:1转换为XLSX。
因为重要的是Excel文件具有与TDMS文件相同的选项卡和相同的文件名。
我读取了选项卡和文件名,但我不知道如何创建与TDMS具有相同名称和内容的新Excel文件。这就是我到目前为止所尝试的:
from nptdms import TdmsFile
from nptdms import tdms
import os,glob
#Namen aller TDMS-Dateien in einem Ordner
file_names=glob.glob('*.tdms')
for file in glob.glob(
我试图只读取TDMS文件的元数据,但我的代码读取整个文件。有人有这方面的经验吗?谢谢。
这是我目前的代码:
import numpy as np
from nptdms import TdmsFile as td
with td.open('c:\data\AM\Desktop\X\file1.tdms') as tdms_file:
print(tdms_file)
td('c:\data\AM\Desktop\X\file1.tdms').as_dataframe().to_excel('c:\data\AM\Desktop\X\f
几年来,我一直使用nptdms模块对TDMS文件进行分析,没有问题。最近,我第一次尝试读取TDMS文件时出错了。我从TdmsFile中导入nptdms
from nptdms import TdmsFile
我试着读到:
tdms_file = TdmsFile.read(path_to_my_tdms_file)
然后得到以下错误:
type object 'TdmsFile' has no attribute 'read'
我使用python v3.6.10、Anaconda和nptdms v0.12.0。
问题
我已经在我的桌面计算机上创建了一个模拟系统,由一个PCIe6738组成,提供一个1 1kHz的双通道信号给一个模拟的USB3646,它是使用某种虚拟仪器驱动的。这些数据作为.tdms文件收集在本地文件夹中。我能够通过下面的python代码来访问内容
import numpy as np
import nptdms as npt
from matplotlib import pyplot as plt
# Read in the file
tdmsFile = npt.TdmsFile.read("ITestTDMS.tdms")
all_groups = tdmsFi
我正在开发一个用于读取.tdms (国家仪器)文件的应用程序,我正在使用"TDMSReader“包。除了使用设定的持续时间或时间间隔的文件外,此操作很好。
在.tdms示例文件中,可以注意到该文件由五个通道组成,每个通道包含174080项。(可以使用此查看文件的内容)
但是,我提到的C#包没有考虑到这一点,它只能读取等于"wf_samples“字段(10240)的项数,从而丢弃其余的条目。有人找到了如何读取通道的“长度”属性并提取其余数组值的解决方案吗?
将.tdms文件转换为.csv的代码示例
//file.Fullname = full pa
我遇到了将.TDMS文件写入.txt文件的情况。TDMS文件结构包含由numpy数组格式的通道组成的组。我正试图找出最快的方法来遍历组和通道,并将它们转换成“表”格式。我有一个可行的解决方案,但我不认为那太快了。
我的代码片段,其中的文件已经打开到、tdms、变量和组,变量是该.tdms文件中的组列表。代码在组上循环,并将该组中的通道列表打开到通道变量。要从通道获取numpy.array数据,可以使用声道列表index.data。然后,我只使用column_stack,将通道一个一个地添加到“表”格式中,然后用np.savetxt保存数组。能有更快的方法吗?
for i in range(le
我在一个文件夹中有多个LabVIEW生成的.xlsx文件,我希望将其转换为.csv。
我尝试过不同的方法,但都抛出了相同的错误:
TypeError:预期的<class‘openpyxl.styes.adds.fiill’>
示例:
import pandas as pd
import os
from glob import glob
for xslx_file in glob(r"C:\path...\*.xlsx"):
df = pd.read_excel(xslx_file)
csv_file = os.path.splitext(x