Tag: matlab

在MATLAB中单个调用xlsread打开电子表格的所有表单

我们可以在MATLAB中使用这个函数提取特定的表格: out = xlsread(filename,sheet); 我们如何使用此函数的单个调用来提取多个表单? 我不想使用循环,并一次又一次地读取文件,以提取不同的工作表数据。

当电子表格用作培训和validation数据时,neural network工具箱前馈networking发出“输出<variables>未分配”错误

我正在尝试创build一个可以适合一组财务数据的前馈networking。 财务数据以Excel电子表格的forms提供给我们。 我创build了只包含必要数据的小型电子表格。 但是当我input训练集和validation集,然后尝试训练networking,当我达到训练函数时,我得到以下错误: 输出参数“v”(也可能是其他的)在调用“network / subsref”时没有分配。 我已经检查了我的代码并完成了研究,但是我无法确定问题。 我发现错误信息说,这意味着输出参数不存在,但我不知道在哪里。 相关代码片段: training_patterns = xlsread('Training_Set'); validation_patterns = xlsread('Validation_Set'); ndim_inputs=2; %2D patterns–not counting bias nnodes_layer1=5; %try this many interneurons–not including bias nnodes_layer2=1; %single output net = feedforwardnet(5, 'trainlm'); [net, tr] = net.train(net, training_patterns, validation_patterns); 顺便说一下,包含数据的matrix具有相当大的尺寸。 训练matrix是227×8,validationmatrix是51×8。

以ms为单位读取时间戳,以Matlab中的科学格式显示

我有一个csv文件,包括一个时间戳列。 在记事本中,在Excel和Matlab中,数值显示为科学格式,例如'1,44532E + 12'。 因此,这个价值是非常不准确的。 在Excel中,我可以计算两个值之间的差异,并得到一个合理的差异。 因此,Excel中的科学格式就是格式。 实际的单元格内容是'1445322672767'。 我为什么在记事本中显示为'1,44532E + 12'。 但那不是我的问题。 我试图分析在Matlab的数据,但我无法。 我试过textscan,readtable和csvread。 但是,我无法获得除string以外的价值。 随着str2num这可以改为一个双精度,但只有6位数字的准确性(这是完全无用的)。 有什么build议么?

用不同的x和y值平均许多曲线

我有几条包含许多数据点的曲线。 x轴是时间,假设我有n条曲线,其中数据点对应于x轴上的时间。 有没有办法获得n条曲线的“平均”,尽pipe数据点位于不同的x点? 我想可能是像使用直方图来装箱的价值,但我不知道哪个代码开始可以完成这样的事情。 Excel或MATLAB可以做到这一点? 我也想绘制平均曲线的标准偏差。 一个问题是:x值之间的分配不统一。 有更多的值更接近t = 0,但在t = 5(例如),数据点的频率要小得多。 另一个担心。 如果两个值都在1 bin内会发生什么? 我假设在计算平均曲线之前我需要这些值的平均值。 我希望这个传达我想做的事情。 我可以使用什么代码(MATLAB,EXCEL等)来实现我的目标?

matlab:问题读取excel二进制(.xlsb)文件

我正在尝试阅读(MATLAB 7.14.0.739(R2012a),Ubuntu 12.04,filesize〜2MB)包含多个工作表的二进制excel文件,但得到以下错误: [status,sheets,xlFormat] = xlsfinfo('633933_2014-07-04_11-34-27.xlsb') 状态= '' 张= 无法读取的Excel文件:文件包含意外的logging长度。 尝试保存为Excel 98。 xlFormat = '' 我有大量的这些二进制文件,所以我不想将它们重新保存到其他格式,如果可能的话。

将excel公式转换为matlab

我需要帮助将excel公式转换为matlab。 我已经在excel中编译了一个简单的if语句,例如: Ps(t)=IF(T(t)<Tp,P,0) 进入matlab如下: if Ps(t)=T(t)<Tp; p; 0; end 它是否正确? 如果是的话,我该如何翻译一个更复杂的Excel方程,如: =IF(F6>273.16,(IF(AND(AB5>0,Y6>0),MIN(Y6*3600/$AE$11,AB5),0)),0)

如何将mat文件转换为xlsx文件

执行代码后,我收到一个错误: load('firstdiff.mat') xlswrite('test.xlsx', firstdiff) mat文件只包含数字值( 0和1 ) 未定义的函数或variables'firstdiff'

你可以用xlswrite,matlab上的类似书面列标题分组数据?

对matlab很新,仍然在学习基础知识。 我试图写一个脚本来计算波形中两个峰值之间的距离。 这部分我已经设法做了,我用xlswrite把我得到的值放到一个excel文件中。 对于每个文件,我有大约50-250列,只有两行:第二行有数值,第一行有列标题,从我从中提取数据的原始Excel文件复制。 有些列有相似但不相同的标题,例如'green227RightEyereading3'和'green227RightEyereading4'等。有没有一种方法可以将具有相似标题的列组合在一起,例如在标题中具有相同的数字/颜色(Iegreen227)和要么是“右眼”,要么是“左眼”,并计算其数值的平均值? 链接到这里文件:> https://www.dropbox.com/s/ezpyjr3raol31ts/SampleBatchForTesting.xls?dl=0 > >[Excel_file,PathName] = uigetfile('*.xls', 'Pick a File','C:\Users\User\Documents\Optometry\Year 3\Dissertation\A-scan3'); >[~,name,ext] = fileparts(Excel_file); >sheet = 2; >FullXLSfile = [PathName, Excel_file]; >[number_data,txt_data,raw_data] = xlsread(FullXLSfile,sheet); >HowManyWide = size(txt_data); >NumberOfTitles = HowManyWide(1,2); >xlRangeA = txt_data; >Chickens = {'Test'}; >for f = 1:xlRangeA; %%defined as top line of cells on sheet; >Text = xlRangeA{f}; […]

如何防止Excel导入CSV值作为单个大数字?

我正在使用Matlab来输出一些CSV文件。 dlmwrite('filename.csv', DataX, '-append'); 这给了我漂亮的CSV值,如 368,331,368,301,293,323,308 210,766,97,105,82,90,82,97 (行和列被截断,约为20 * 50) 当我将它导入到Excel中时,它会将其读入 3.68331368301293E+167 210,766,97,105,82,90,82,97 如果将数据作为科学记数法读取,则会删除它认为不重要的值,从而得到一些有效数字和大约150个零。 我怎样才能防止Excel随机决定什么是或不是科学记数法?

加载结构中的excel文件

我正在开发一个小项目,需要大量的数据导入matlab进行进一步的处理。 我目前有15个excel文件,每个文件有8张。 我想要的是做一个父结构,我要加载每个Excel文件作为一个结构例如 parentstructure.filename.value{} 父母结构是主要结构,文件名是父母结构中的另一种结构的Excel文件,每个Excel文件在单元中有8张。 我已经写了一个小的代码读取数据到matlab中。 代码如下 srcdir = ''; %%% where all the files are placed srcfiles = dir(fullfile(srcdir, '*.xls')); for p = 1:numel(srcfiles) filename = fullfile(srcdir, srcfiles(p).name); [~,sheets] = xlsfinfo(srcfiles(p).name); for i = 1:8 Sheet = char(sheets(1,i)) ; value{p,i} = xlsread(filename,Sheet); end end 这段代码工作正常,并将数据加载到matlab中,但不是我想要的结构forms。 我尝试了其他几个组合和调整,但得到错误。 任何帮助或guuide将不胜感激。 谢谢