精华内容
下载资源
问答
  • ID3文档,matlab

    2014-10-25 15:59:10
    机器学习 id3 有输出结果,保证没问题 ,matlab 代码
  • 问题提出:现在要保存程序的输出结果,包括运行时间,运行结果和中间变量。其中运行时间和运行结果只是一个数字,中间变量结果时一个n*n的矩阵和一个2*n的矩阵。想把这些量保存在txt文件中。   save 函数 将工作...

    文件写入方法

    问题提出:现在要保存程序的输出结果,包括运行时间,运行结果和中间变量。其中运行时间和运行结果只是一个数字,中间变量结果时一个n*n的矩阵和一个2*n的矩阵。想把这些量保存在txt文件中。

     

    save 函数

    将工作空间中的变量写入文件,导出mat文件中。

     

    1. 调用dlmwrite函数

    dlmwrite(filename,M)

    dlmwrite(filename,M,’D’)  D用来指定数据间分隔符。 ‘ ’表示空格。’\t’ 制表符

    dlmwrite(filename,M,’attrib1’,value1,’ attrib2’,value2,…………)

    参数名(attribute)

    参数值(value)

    说明

    delimiter

    单个字符

    设定数据间分隔符

    newline

    ‘pc’

    设定换行符为‘\r\n’

    ‘unix’

    设定换行符为‘\n’

    precision

    以%引导的精度控制符

    指定有效位数

     

     

     

     

    dlmwrite('1.txt',A,' ') 将A中的数据存入1.txt中,并以空格作为分隔符。若没有文件1,则创建txt文件。

    dlmwrite('2.txt',A,'\t') \t 制表符,有利于显示

    dlmwrite('2.dat',A,' ') 将A中的数据存入2.dat中,并以空格作为分隔符。若没有文件1,则创建txt文件。

    dlmwrite('2.txt',A,' ')

    dlmwrite('2.txt',a,'-append') a中的数据接着存入2.txt中,若没有'-append'则将2.txt清空,再存入a

     

    总结:可以用dlmwrite 将运行结果存入txt文件中。

    dlmwrite('result.txt',obj,'\t');

    dlmwrite('a.txt',a,'\t');

    dlmwrite('time.txt',cpu_time,'\t');

     

    2,调用 fprintf 函数写入数据

    以上调用dlmwrite函数虽然可以使用,但是不能将结果写入同一个文档中。尝试用fprintf函数实现写入同一个文档中的功能。

    count= fprintf(fid,format,A,……) A存入fid

     

    转换指示符用来控制符号表示法,对齐方式,有效位数,字段宽度和输出格式等。format字符串包括含不可打印的控制符,如换行或者制表符等。

    1)控制标志(可选)“-”表示左对齐。

    2)字段宽度(可选)

    3)精度(可选)

    4)转换符(必须) %-6.2f 表示以左对齐方式输出一个浮点数,宽度为6个字符,小数点后面有2个有效数字。

    \f:进纸; \n:换行; \t:水平制表符;

     

    注意:调用fprintf函数写入数据时,format参数指定的格式循环作用于列上,原始矩阵的列在文件中或屏幕上就变成了行。下次使用的时候要转置过来!

     

    当n=9时,程序为:

    fid=fopen('result.txt','at');   %新建一个result的txt文件存放结果

    fprintf(fid,'% -f\n',cpu_time); %存储运行时间

    fprintf(fid,'% -f\n',obj);  %存储运行结果

    fprintf(fid,'%-1.0f %-1.0f %-1.0f %-1.0f%-1.0f %-1.0f % -1.0f % -1.0f % -1.0f\r',a);% 以%开始,-为控制符号,1为字符宽度,0为小数点后面的位数,f为转化符,\r为换行。

    fclose(fid);

     

    总结:可以存放在同一个文档中便于管理,但是不足之处在于当n的值变大的时候,a变量的写入书写有难度。

    下一步是思考当程序运行比较多的时候,怎么批量读数据和写数据以及数据和excel的交互。

    展开全文
  • 动态描述机器人遇到动态路障的避障作用,同时在图示中动态显示避障路线,避障过程,最终输出详细路线以及结果描述。
  • 首先大概翻译一下帮助文档里面对sprintf函数的描述。sprintf函数的官方定义是把数据格式转换成字符串或字符向量(Format data into string or character vector)。语法结构有以下三种:str = sprintf(formatSpec,A1, ...

    c1453537c2cd2f00f2085bc844081b71.png

    首先大概翻译一下帮助文档里面对sprintf函数的描述。

    sprintf函数的官方定义是把数据格式转换成字符串或字符向量(Format data into string or character vector)。

    语法结构有以下三种:

    str = sprintf(formatSpec,A1, ... ,An):按照formatSpec定义的格式规范将列向量A1至An中的数据转换成字符,并将结果返回至str中。

    [str,errmsg] = sprintf(formatSpec,A1, ... ,An) :当运算出错时,返回错误信息至errmsg,无错误时,errmsg为空。

    str = sprintf(literalText):将文本literalText中的转义字符(如n和t)翻译出来并返回其他字符。如果literalText包含格式运算符(如%f),str会丢弃它和之后的字符。

    在使用sprintf函数时,通常都是文本和向量一起作为输入,例如运行如下代码,就会返回str ='The array is 2x3.'

    formatSpec = 'The array is %dx%d.';
    A1 = 2;
    A2 = 3;
    str = sprintf(formatSpec,A1,A2)

    我认为sprintf在使用时需要注意的是格式运算符,使用方法汇总如下:

    %d是输出整型,%4d就是要求输出长度为4的整型,例如A = sprintf('%d',5)返回的是A='5',A = sprintf('%4d',5)返回的是A=' 5',不足的长度会用空格' '补充。但是我试了下用%d输出小数,发现也是可以输出的,如A = sprintf('%d',5.2)返回的是A='5.200000e+00',和A = sprintf('%e',5.2)的输出结果是一样的。

    %e是按照科学计数法输出。

    %g会根据数据的大小以及种类,合理的选择输出类型。

    %f是输出小数,%6.2f的意思就是输出总长度为6,小数点后保留两位的小数,如A = sprintf('%6.2f',3.1415)返回的是A=' 3.14'.

    %c是输出字符,%s是输出字符串。这两个的输出结果是不一样的,例如A = 'ZH', sprintf('A is %c',A)得到的是'A is ZA is H',而 sprintf('A is %s',A)得到的是'A is ZH'。

    展开全文
  • matlab圆孔检测

    2013-09-06 20:07:09
    对于图片中的圆孔进行检测,可以获得圆孔的数量。圆孔的标准由用户给出。图像检测的结果用excel文档输出,前提是必须用安装了offce。本算法用matlab实现。
  • motivation:1.要实现“符号几何规划”的功能,使用MATLAB自带的fmincon函数来实现2....使用Python来调取MATLAB接口,执行MATLAB的.m文件3.MATLAB的.m文件中,将输出结果写入txt文档4.Python读取txt文档...

    motivation:

    1.要实现“符号几何规划”的功能,使用MATLAB自带的fmincon函数来实现

    2.工程的代码是通过Python来完成的,需要Python调用MATLAB实现

    思路:

    1.使用Python直接生成约束条件,目标函数,初始值等函数

    2.使用Python来调取MATLAB接口,执行MATLAB的.m文件

    3.MATLAB的.m文件中,将输出结果写入txt文档

    4.Python读取txt文档结果

    1.MATLAB部分

    首先,简要介绍下MATLAB中自带的fmincon函数。fmincon函数是用来解决“非线性约束规划”,本文需要用到的是它解决“符合几何规划”的能力。【几何规划】的定义是,目标函数和约束条件均为系数为正的多项式,而【符号几何规划】在此基础上拓展,允许符号为负。

    fmincon函数的约束形式如下:

    其中,c(x)表示非线性多项式的不等式约束部分,注意,不等式需要严格按照“小于等于0”的格式(可以进行一些简单的不等式变换,写成右边为0的形式),ceq(x)表示非线性多项式的等式约束部分,形式同上。(b和beq是线性约束部分的参数,写成向量形式,A 和 Aeq 是线性约束部分的参数,写成矩阵形式,本文的问题场景不涉及“线性约束”条件)。lb和ub分别为x变量的上下限。在MATLAB中使用fmincon,传入参数如下:x=fmincon( objfunction, x0, A, b, Aeq, beq, lb, ub, st)

    在本文的问题背景下,目标函数的.m文件代码如下

    32116f90596b?utm_campaign

    newobj.m

    约束函数的.m文件的代码如下(这里简单设置了约束函数,当需要多个约束,只需要再添加即可,形式为c = [(),(),...,()]):

    32116f90596b?utm_campaign

    equationset.m

    fmincon函数还需要传入初始值(因为寻找的是局部最优解),根据具体情况来判断是否需要规定变量的上下边界。初始值传参的.m文件如下:

    32116f90596b?utm_campaign

    initialValue.m

    完成了三个函数.m文件,下面需要写脚本.m文件。其具体代码如下:

    32116f90596b?utm_campaign

    main.m

    首先,newobj.m和equationset.m需要和main.m在同一个目录下,“initial”方法是获取初始值x0,以及变量x的上下限。fmincon函数在输出时,不仅可以返回规划结果x,还能返回其他参数。此处本文用到exitflag参数,用来确定规划是否成功执行。exitflag的参数及含义如下:1(简单来说就是,规划成功)

    First-order optimality measure was less thanoptions.OptimalityTolerance, and maximum constraint violation was less thanoptions.ConstraintTolerance.

    -2(未找到最优解,规划失败)

    No feasible point was found.

    其他参数含义详见http://cn.mathworks.com/help/optim/ug/fmincon.html 中的 output arguments 部分。

    由于,我们需要将输出的结果保存到本地,所以在main.m的脚本文件中,加入写入txt的代码:

    32116f90596b?utm_campaign

    写入txt的代码

    将四个.m文件放在同一个目录下,在matlab中点击运行即可获得结果。下面,本文要做的工作是通过Python来运行main.m

    2.Python部分

    在Python端口,只需要使用MATLAB提供的Python API,即可实现Python运行MATLAB的脚本。

    首先,在使用之前,需要安装MATLAB的API。安装过程非常简单(本文以在window 7环境下安装为例):用管理员模式打开cmd:

    cd “MATLAB安装路径\extern\engines\python”

    python setup.py install

    安装完成之后,即可在Python代码中:import matlab.engine

    之后,将main.m文件以及其他三个.m文件放置在.py文件的通过目录下,接下来只需要两行代码就能完成对于main.m脚本的调用#首先初始化engine

    eng= matlab.engine.start_matlab()

    #之后直接访问脚本文件名

    eng.main(nargout=0)

    #最后,释放engine

    eng.quit()

    现在,到main.m中指定的生成txt文档的路径下,就能找到生成的两个txt文件,只需要使用Python来读取这两个txt中的数据即可。

    2017.7.29更新

    问题:

    由于每次调用,MATLAB都会重新初始化,初始化的时间会消耗一些时间。eng= matlab.engine.start_matlab()

    由于实验场景要反复调用,执行MATLAB的脚本。所以尝试在for循环之外初始化,在for循环内执行MATLAB脚本,最后在for循环外退出eng。但是发现,MATLAB的脚本(脚本中有一个写入文件操作)只在第一次for循环的时候执行。只有在for循环中,执行开启eng,执行脚本和结束eng才能正常运行。

    MATLAB脚本中的“写入文件”操作是自动执行的,相当于python中的f.flush(),但是仍然只在eng退出之后,才能重新开始一个脚本运行。查找官方文档未果...

    参考文献:

    http://cn.mathworks.com/help/optim/ug/fmincon.html(fmincon函数官方文档)

    http://cn.mathworks.com/help/matlab/matlab-engine-for-python.html(Python调用MATLAB接口官方文档)

    展开全文
  • Matlab程序设计

    2013-04-20 13:16:09
    上交作业要求: 1)电子文档:设计分析报告一份(包括系统建模、系统分析、系统设计思路、程序及其执行结果)。...2)Matlab程序:可执行程序一份(运行程序可显示、输出执行结果) 按班级统一上交。
  • matlab实现repelem和repmat函数功能

    千次阅读 2020-06-26 16:05:46
    文章目录创建一个函数repEleMat,实现repelem() 和repmat()功能repelem()函数repelem()函数示例:repmat()函数repmat()函数示例:CS专业的一道题目matlab代码实现输出结果 创建一个函数repEleMat,实现repelem() 和...

    创建一个函数repEleMat,实现repelem() 和repmat()功能

    首先我们来了解repelem函数和repmat函数的定义
    此处引用网上资料 —> https://zhuanlan.zhihu.com/p/142365105

    matlab官方文档对repelem()repmat()亦有定义。

    repelem()函数

    B = repelem(A,r1,…,rN) 将 A 中的每个元素依 r1,…,rN 进行重复,返回一个数组。
    r1,…,rN 中的每个元素必须是一个标量,或是与 A 在对应维度具有相同长度的向量。

    例如,如果 A 是一个矩阵,repelem(A,2,3) 则返回一个矩阵,其中包含 A 中每个元素的一个 2×3 块。

    repelem()函数示例:

    在这里插入图片描述

    repmat()函数

    B = repmat(A,r1,…,rN) 指定一个标量列表 r1,…,rN,这些标量用于描述 A 的副本在每个维度中如何排列。当 A 具有 N 维时,B 的大小为 size(A).*[r1…rN]。例如:repmat([1 2; 3 4],2,3) 返回一个 4×6 的矩阵。

    repmat()函数示例:

    在这里插入图片描述

    CS专业的一道题目

    在这里插入图片描述

    matlab代码实现

    %% Created by cheunghonghui on 2020.06.26
    
    %% matlab实现
    mat = [1 2;3 4];
    [out1,out2] = repEleMat(mat,2,2)
    
    function [out1,out2] = repEleMat(mat,r,c)
    [m n] = size(mat); %统计mat的规格
    %对 mat中的每一个元素进行复制,复制规格由repEleMat输入的r,c控制
    %程序设计思路,对输入的mat进行分析,先通过临时变量temp将mat中的各元素进行复制,
    %然后将各个temp按照mat的排列循序赋值给out1
    for i = 1:m
        for j = 1:n
            temp(r*(i-1)+1:r*i,c*(j-1)+1:c*j) = mat(i,j);
        end
    end
    out1 = temp;
    
    %同理设计repmat函数功能
    for i = 1:r
        for j =1:c
            temp((i-1)*m+1:i*m,(j-1)*n+1:j*n) = mat;
        end
    end
    out2 = temp;
    end
    
    

    输出结果

    在这里插入图片描述

    展开全文
  • 帮一个同学做毕设,她的问题是需要选中一个文档,然后提取其中的关键字及其后面的数字,再在gui界面中输出提取的数字。文件部分内容如下:  BufferImageNum=32 DetectorChannelNumHorizontal=1944 ...
  • 与上一版本相比,软件功能一、共享作品使用 MATLAB 实时编辑器创建MATLAB 脚本和函数,将代码、输出和格式化文本集成到一个可执行记事本文档中。1、新特性? 实时任务: 使用实时编辑器任务探索各个选项,并对结果和...
  • MATLAB 及应用上机作业 学院名称 机械工程学院 专业班级 测控 1201 学生姓名 学生学号 201 年 4月 MATLAB 及应用上机作业要求及规范 一作业提交方式 word 文档打印后提交 二作业要求 1封面按要求填写学院班级姓名...
  • matlab求1-N自然数累加和。子函数形式,直接调用可在命令窗口输出结果文档里面也有注释,方便学习。有不懂的同仁可联系.
  • 采用Matlab计算整数n的阶乘。子函数形式,直接调用。 采用if-else语句实现,非常方便。文档里面也有注释,方便学习。结果输出到命令窗口。
  • Matlab读写Excel文件

    2016-12-02 09:46:45
    昨天实验室给的任务是计算经过AAC-LC编码后的音频客观质量...当计算立体声的peaq时,输出的是3万多行、2列的excel文档,其中依次是每一帧的计算结果。数据比较杂乱,无法直接在excel中用函数整理,所以决定使用Matlab
  • 2psk2fsk调制源程序附测试结果图和实验题目-新建 文本文档.txt 题目 基于MATLAB的2PSK和2FSK调制仿真 要求 编写2PSK和2FSK调制程序,任意给定一组二进制数,计算经过这两种调制方式的输出信号。程序...
  • Matlab程序设计 上交作业要求 1电子文档设计分析报告一份包括系统建模系统分析系统设计思路程序及其执行结果 2Matlab程序可执行程序一份运行程序可显示输出执行结果 按班级统一上交 题目一 考虑如图所示的倒立摆系统...
  • 创建实时脚本程序(1种交互式MATLAB文档),将所有命令放在一起;这是1个包括一系列MATLAB命令的.m文件;无需编译,即可执行;从上到下依次执行 1.打开MATLAB实时编辑器并创建一个空白实时脚本:HOME栏-New选项-Live Script...
  • 文档中包含了关于深度学习的源代码,用matlab编写,有测试实例并且有相应结果输出,深度信念网络、卷积神经网络、自编码器、NN网络等可用代码,经测试没有任何错误可以直接下载运行!
  • Matlab程序设计 上交作业要求 1电子文档设计分析报告一份包括系统建模系统分析系统设计思路程序及其执行结果 2Matlab程序可执行程序一份运行程序可显示输出执行结果 按班级统一上交 题目一 考虑如图所示的倒立摆系统...
  • 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、例子二、算法实现结果 前言 提升方法基于这样一种思想:对于一个复杂任务来说,将多个专 家的判断进行适当的综合所得出的判断...
  • matlab文件操作 文件操作是一种重要的输入输出方式即从数据文件读取数据或将结果写入数据文件MATLAB提供了一系列低层输入输出函数专门用于文件操作版权文档请勿用做商业用途 1文件的打开与关闭 1打开文件 在读写文件...
  • 实 验 一 mat l a b 实 现 序 列 卷 积 运 算 精品文档 前言 MATLAB...算数字信号处理方面有强大的功能另外 MATLAB提供了方便的 绘图功能便于用户直观地输出处理结果 本课程实验要求学生运用 MATLAB编程完成一些数字信
  • MATLAB Notebook 制作的M-book文档不仅拥有 MS-Word 的全部文字处理功能,而且具备MATLAB无与伦比的数学解算能力和灵活自如的计算结果可视化能力。 教程中有详细的使用方法。 内容目录: Notebook. 1 1.1 ...
  • MATLAB Notebook 制作的M-book文档不仅拥有 MS-Word 的全部文字处理功能,而且具备MATLAB无与伦比的数学解算能力和灵活自如的计算结果可视化能力。 教程中有详细的使用方法。 内容目录: Notebook. 1 1.1 ...
  • MATLAB答题卡识别,带GUI界面,可以统计每个选项识别结果,最终分数以及是否及格,输出学号,学科等。步骤详细,带万字文档
  • 下载使用MATLAB 7.0进行一些分析。学习过程下载了 >,但是发现比较里面的截图和内容比较模糊,但是对我学习帮助仍然很大。参考该文档,我记录下学习和练习的过程,后面自己也可以参考... 那么 MATLAB 7.0会输出结果
  • matlab是一种解释语言,c 是一种编程语言。...一行结束不加“分号”,输出结果 一行结束加“分号”,不输出 二,快捷键 ctrl+r 将代码注释掉 ctrl+t 将注释的代码恢复 ctrl+i 自动调整格式 home 将鼠标移至...
  •  (1)编辑m文件,将需要输出结果(包括中间结果和最终结果)都作为函数的输出 如[a,b,c,d]=fun(e,f,g) ;(2)在matlab 7.4 中,敲入命令deploytool,然后新建一工程,将所需的m文件加入,生成dll,再将结果...
  • 文档首先用来实现对站点降水阈值的处理,然后筛选出大于等于阈值的各点的信息,但是不包括值...输出数据是求出该站点的降水数据中不小于阈值的降水记录,结果如下图: 详细代码:(Matlab实现) %文档说明: %
  • 文档首先用来实现对站点降水阈值的处理,然后筛选出大于等于500的...输出数据是求出该站点的降水数据中大于等于500的降水记录,结果如下图: 详细代码:(Matlab实现) 代码中的路径还需按照自己PC的路径来设置

空空如也

空空如也

1 2
收藏数 39
精华内容 15
关键字:

matlab结果文档输出

matlab 订阅