Tag: matlab

无法写入Excel(Matlab)

当我尝试将我的代码的输出写入Excel电子表格时,出现以下错误:“未定义variables结果”或类“results.xlsx”。我似乎无法理解为什么会出现这种情况。 function [final_matrix] = MCsolutionupdated() no_iterations = input('No. of iterations?:'); thresh_strain = zeros(1,no_iterations*16); casechoice =input('Enter 1 for 1st Layup and 2 for 2nd layup:'); J = Nielsennewupdated(casechoice, no_iterations); thresh_strain = J; roundedValues = round(thresh_strain/.0001)*0.0001; myUniqueValues = unique(roundedValues); i = numel(myUniqueValues); nelements = hist(thresh_strain(:),myUniqueValues); for i=1:i percent(i) = (nelements(1,i)/numel(thresh_strain))*100; end final_matrix = [myUniqueValues' percent']; xlswrite(results.xlsx, final_matrix); […]

我如何读取.txt文件并转换为matlab中的.xlsx文件?

所以我有这个到目前为止 file = fileread(filenames.txt) ; data = textscan(file, '#:%2d \t Area:%5d \t Xp:%4d Yp:%4d \t Length:%3d B#:%2d \t R:%2d L:%2d Ch:%2d \t End 1:Xp:%4d Yp:%4d \t End 2:Xp:%4d Yp:%4d\n') ; data = [data{1}, num2cell([data{2:end}])] ; xlswrite('filenames.xlsx', data) ; 但我的文本文件看起来像这样(多个文件不同行这个例子有9加上文件索引行) File Index: 2095303 #: 1 Area: 939 Xp:-397 Yp: 586 Length: 99 B#: 2 R: 2 […]

MATLAB:将数值转换为NaN

我试图导入一个包含纬度和经度数据的Excel文件到MATLAB中。 我正在使用“导入数据”选项。 它正在读取纬度和经度信息,除了一些经度单元被标记为不可引用并被NaN取代之外。 它们包含像-119.253等值。可能是什么原因呢? 我只是想保留原来的信息。 以下是我的Excel电子表格的一部分的快照:

使用dynamic名称访问Matlab工作区variables

快速的问题。 我有一个列出不同名称的Excel文件。 我将这些名称导入Matlab,执行计算,然后将数据保存为.dat文件。 例如: Apple.dat: 2, 5, 50, 2993 Orange.dat: 5003, 292, 29, 2994 Banana.dat: 3992, 3, 39, 2995 然后,我用eval读取每个单独的.dat文件,并将数据/matrix作为单个variables加载到主工作区中。 此时,我拥有WorkSpace中的所有variables以及包含此列表(ListofVariables)的单元格文件。 我的主要目标是在不知道名字的情况下访问每个variables – 因为我的Excel文档将随着时间而改变! 但是,如果我input: ListofVariables(i,1) 它只会拉起“苹果”,而不是与variables苹果相关的数据。 有没有知道他们的个人名字访问variables的数据? 感谢您的帮助!

如何提取excel列并将其导入到MATLAB?

你好,我有一个Excel文件多列到“CD”。 我的代码字完美的26列的Excel文件,但之后,它不工作。 [ia ib] = ismember(header, {item}); letter = find(ia)+'A'-1; cell = fprintf('%c:%c', letter, letter); out = xlsread('filename', cell); 这个代码工作,直到我到Z:Z。 当我到达AA,AB,AC时…它不起作用。 如何提取AA,CD,BG色谱柱?

从Matlab导出巨大的matrix

我有一些在Matlab中生成的值 for count = 1:30 -Do stuff- Data{Count} = [Multiple values] %here end %Count 我试图将这个大块的数据复制到MS Excel,但我总是得到这个: …然后我必须逐个打开每个单元格中的每个matrix来提取它们的值。 我很想在Matlab中打开variables时看到所有的matrix,如下所示: 并轻松地将它们复制并粘贴到excel中,这就是为什么我将它们分隔成1,2,3 …首先。 有什么意见? Matlab Ver 2010b。

如何使用RubyreplaceCSV中指定列的值?

我有一个CSV,第一列给出了工作日。 但问题是,我需要在MATLAB中使用CSV,它不允许string值。 所以,我想把星期天的星期一换成7,…,星期一换成1。 但是我似乎无法在Ruby中find这样的方法。 我无法手动打开Excel,因为文件大小很大。 具体来说,我在解决如何访问和指向我想在Ruby中的特定列的语法有问题。 例如,如果该文件将在MATLAB中加载,并且如果由于某种原因仍然需要将工作日转换为数字,那么我会写一个简单的代码: for i=1:length(Columns(:,1)) if Columns(i,1)=='sunday' Columns(i,1)=7 elseif Columns(i,1)=='saturday' Columns(i,1)=6 elseif Columns(i,1)=='friday' Columns(i,1)=5 elseif Columns(i,1)=='thursday' Columns(i,1)=4 elseif Columns(i,1)=='wednesday' Columns(i,1)=3 elseif Columns(i,1)=='tuesday' Columns(i,1)=2 elseif Columns(i,1)=='monday' Columns(i,1)=1 end end 所以,我在计算这个语句的Ruby等价物时遇到了问题: for i=1:length(Columns(:,1)) 任何帮助表示赞赏。 谢谢。

从multidimensional array传递到电子表格

我有一个multidimensional array,其forms为: 每行代表一张纸,每列代表一种variables。 我想要做的是将数据导出到电子表格中,每一行都存储在一个工作表的列中。 (也许它可以很容易地将simmultidimensional array分成五个matrix,然后将它们一起导出到电子表格),但我不知道这是否是最有效的方法。 这是电子表格的图像: 下面是我的代码,它基本上从Excel中读取工作表,并对每种types的数据进行1000个案例的模拟: sim={}; for k = 1 : 5 sheet = xlsread('CB.xlsx', k); [m, n] = size(sheet) for i = 1 : n [f,x] = ecdf(sheet(:,[i])); [f, dup] = unique(f); x = x(dup); randomValues = rand(1, 1000); sim{k,i} = round(interp1(f,x, randomValues)); end end 试图使用Mikhail_Sam'answer我有以下问题: `sheet = 1 for i […]

在matlab中使用xlsread来遍历文件夹中的所有.xls文件

我正在编写一个脚本,需要遍历文件夹中的所有.xls文件,并从特定的单元格中提取数据。 我认为xlsread是有能力的,但我不断收到一个错误,内容如下: MATLAB:xlsread:filenotfound 这是代码的基本结构: files = dir('C:\folder\folder\folder\*.xls'); channelinfo = 'C:\differentfolder\chanloc.type'; cnt = '.cnt'; condition = 'varriable'; for i = 1:length(files(:,1)) try CNTCrash1WindowStart = xlsread(files(i).name, 'Summary', 'C8'); CNTCrashWindowEnd = xlsread(files(i).name, 'Summary', 'D8'); subjectNum = xlsread(files(i).name, 'User Info', 'A2'); eeglab; %eeglab things happen here catch ME disp(ME) end end

如何将matrix数据转换为列?

我有100 x 101数据。 我想将它们串行转换,例如对于第一行所有列数据,然后对于第二行所有列数据等等。 这意味着结果将只有三列。 第一列是行号,第二列是列号,第三列是相应行和列的值。 你能帮我做这个转换在MATLAB中。 可用的数据是ASCII格式,可以在MATLAB和Excel中打开。