Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 无法在EXCEL中打印新行中的MATLAB数据_Database_Excel_Matlab_Output - Fatal编程技术网

Database 无法在EXCEL中打印新行中的MATLAB数据

Database 无法在EXCEL中打印新行中的MATLAB数据,database,excel,matlab,output,Database,Excel,Matlab,Output,我试图让这些数据在每次得到结果时都显示在一个新行中。然而,到目前为止,我在Excel中只得到一行 -->我想我不能做的是,一旦输入/写入一个数据点,matlab需要自动转到下一行/行。。。它目前没有这样做 感谢您的帮助 图形; 价格_pred=零(大小(价格)); 价格_pred(750)=价格(750); 时间=15000; 对于t=750:长度(价格)-1 价格180=价格(t-179:t); 价格360=价格(t-359:t); 价格720=价格(t-719:t); dp=θ0+θ(1)

我试图让这些数据在每次得到结果时都显示在一个新行中。然而,到目前为止,我在Excel中只得到一行

-->我想我不能做的是,一旦输入/写入一个数据点,matlab需要自动转到下一行/行。。。它目前没有这样做

感谢您的帮助


图形;
价格_pred=零(大小(价格));
价格_pred(750)=价格(750);
时间=15000;
对于t=750:长度(价格)-1
价格180=价格(t-179:t);
价格360=价格(t-359:t);
价格720=价格(t-719:t);
dp=θ0+θ(1);
价格_pred(t+1)=价格(t)+dp;
如果(t-750<时间显示)
x1=0:t-750;
y1=价格(750:t);
x2=0:t-749;
y2=价格(750:t+1);
结束
如果(t-750>时间显示)
x1=0:时间显示;
y1=价格(t时间显示:t);
x2=0:时间显示+1;
y2=价格与预测(t时间与显示:t+1);
结束
图(x1,y1,'b*',x2,y2,'m*');
现在抽;
部门主管(价格(t+1));
价格(t);;
disp(dp);
如果(T>750)
T={T;表(价格pred(T),价格(T),dp)};
其他的
T=表(价格、价格(T)、dp);
结束
文件名='test.csv';
可写(T,文件名);

编写Excel的简单方法是使用单元格数组和
xlswrite
命令

对于下面给出的变量,其步骤如下

变量:

eventDate = [{'2016-02-10'};{'2016-02-11'};{'2016-02-12'}];
eventTime = [931;931;1600];
eventValue = [{'open'};{'open'};{'close'}];
xlsDir = 'c:\xls\';
xlsFilename = [xlsDir,'output.xls'];
1) 预先分配单元阵列:

nevent = length(eventTime);
xxcell = cell(nevent+1,3);
irow = 1; icol = 1;
xxcell{irow,icol} = 'Date'; icol = icol + 1;
xxcell{irow,icol} = 'Time'; icol = icol + 1;
xxcell{irow,icol} = 'Value'; icol = icol + 1;
for ievent = 1:nevent
    irow = ievent + 1; icol = 1;
    xxcell{irow,icol} = eventDate{ievent}; icol = icol + 1;
    xxcell{irow,icol} = eventTime(ievent); icol = icol + 1;
    xxcell{irow,icol} = eventValue{ievent}; icol = icol + 1;
end
2) 为单元格阵列创建标题线:

nevent = length(eventTime);
xxcell = cell(nevent+1,3);
irow = 1; icol = 1;
xxcell{irow,icol} = 'Date'; icol = icol + 1;
xxcell{irow,icol} = 'Time'; icol = icol + 1;
xxcell{irow,icol} = 'Value'; icol = icol + 1;
for ievent = 1:nevent
    irow = ievent + 1; icol = 1;
    xxcell{irow,icol} = eventDate{ievent}; icol = icol + 1;
    xxcell{irow,icol} = eventTime(ievent); icol = icol + 1;
    xxcell{irow,icol} = eventValue{ievent}; icol = icol + 1;
end
3) 将数据添加到单元格数组:

nevent = length(eventTime);
xxcell = cell(nevent+1,3);
irow = 1; icol = 1;
xxcell{irow,icol} = 'Date'; icol = icol + 1;
xxcell{irow,icol} = 'Time'; icol = icol + 1;
xxcell{irow,icol} = 'Value'; icol = icol + 1;
for ievent = 1:nevent
    irow = ievent + 1; icol = 1;
    xxcell{irow,icol} = eventDate{ievent}; icol = icol + 1;
    xxcell{irow,icol} = eventTime(ievent); icol = icol + 1;
    xxcell{irow,icol} = eventValue{ievent}; icol = icol + 1;
end
4) 写入Excel:

try
    xlswrite(xlsFilename, xxcell);
catch
    disp('xlswrite error');
end

我还没有尝试过使用
writetable
命令,但这种方法已经足够好了。

编写Excel的简单方法是使用单元格数组和
xlswrite
命令

对于下面给出的变量,其步骤如下

变量:

eventDate = [{'2016-02-10'};{'2016-02-11'};{'2016-02-12'}];
eventTime = [931;931;1600];
eventValue = [{'open'};{'open'};{'close'}];
xlsDir = 'c:\xls\';
xlsFilename = [xlsDir,'output.xls'];
1) 预先分配单元阵列:

nevent = length(eventTime);
xxcell = cell(nevent+1,3);
irow = 1; icol = 1;
xxcell{irow,icol} = 'Date'; icol = icol + 1;
xxcell{irow,icol} = 'Time'; icol = icol + 1;
xxcell{irow,icol} = 'Value'; icol = icol + 1;
for ievent = 1:nevent
    irow = ievent + 1; icol = 1;
    xxcell{irow,icol} = eventDate{ievent}; icol = icol + 1;
    xxcell{irow,icol} = eventTime(ievent); icol = icol + 1;
    xxcell{irow,icol} = eventValue{ievent}; icol = icol + 1;
end
2) 为单元格阵列创建标题线:

nevent = length(eventTime);
xxcell = cell(nevent+1,3);
irow = 1; icol = 1;
xxcell{irow,icol} = 'Date'; icol = icol + 1;
xxcell{irow,icol} = 'Time'; icol = icol + 1;
xxcell{irow,icol} = 'Value'; icol = icol + 1;
for ievent = 1:nevent
    irow = ievent + 1; icol = 1;
    xxcell{irow,icol} = eventDate{ievent}; icol = icol + 1;
    xxcell{irow,icol} = eventTime(ievent); icol = icol + 1;
    xxcell{irow,icol} = eventValue{ievent}; icol = icol + 1;
end
3) 将数据添加到单元格数组:

nevent = length(eventTime);
xxcell = cell(nevent+1,3);
irow = 1; icol = 1;
xxcell{irow,icol} = 'Date'; icol = icol + 1;
xxcell{irow,icol} = 'Time'; icol = icol + 1;
xxcell{irow,icol} = 'Value'; icol = icol + 1;
for ievent = 1:nevent
    irow = ievent + 1; icol = 1;
    xxcell{irow,icol} = eventDate{ievent}; icol = icol + 1;
    xxcell{irow,icol} = eventTime(ievent); icol = icol + 1;
    xxcell{irow,icol} = eventValue{ievent}; icol = icol + 1;
end
4) 写入Excel:

try
    xlswrite(xlsFilename, xxcell);
catch
    disp('xlswrite error');
end

我还没有尝试使用
writetable
命令,但这种方法已经足够好了。

首先,由于有很多未知变量,我无法在中重现您的程序。请创建。第二,我并没有认真阅读您的内容,但您可以使用
Range
参数作为表的参数。然后,您可以将表格写入工作表的特定部分。最后一个问题——你真的需要使用表格吗?为什么您不想使用
xlswrite
函数?首先,由于有很多未知变量,我无法在中重现您的程序。请创建。第二,我并没有认真阅读您的内容,但您可以使用
Range
参数作为表的参数。然后,您可以将表格写入工作表的特定部分。最后一个问题——你真的需要使用表格吗?为什么不想使用
xlswrite
函数?