- 博客(52)
- 收藏
- 关注
原创 SAS - 使用 put() 和 input() 转换数据类型
使用 input () 还是 put() 转换变量数据类型取决于 source data type 和 target data type。对于 input() 和 put(),有四条原则:PUT() always creates character variables INPUT() can create character or numeric variables based on the informat The source format must match the source varia
2022-03-18 18:58:49
4050
原创 matlab的plot调用函数不能用了,总出现错误:Attempt to execute SCRIPT plot as a function
问题解决:查找当前目录下,可能有一个plot.m脚本。删掉或重命名即可。注意:保存图片名称时不要存为plot.m,因为matlab中plot函数的脚本文件就是plot.m,要防止该文件为重新定义。
2015-09-04 22:34:52
9772
原创 matlab如何在图中添加水平线
如图:代码为:line([500,2500],[1,1],'linestyle','--');line([500,2500],[1.05,1.05],'linestyle',':');其基本形式为:默认为实线line([xmin,xmax],[ymin,ymax])或者用plot:plot([xmin,xmax],[y,y],'--')画垂线:plot(
2015-09-04 22:25:02
77924
3
转载 matlab7如何在图中添加文字
text(X,Y,'string') X,Y,是添加文字的横、纵坐标点,'string'是要加入的文字,用单引号括起来
2015-09-04 22:13:04
10129
转载 SAS安装数据SID文件无效问题的解决
问题原因:这SID过期了,找个可以用的SID,最好的办法就是去淘宝买,在网上很难找到和你安装的版本相同的SID的,淘宝买,它会给你相应的安装包和SID,都是匹配的,也会送给你教程,购买关键词是”SAS软件“
2015-05-25 22:55:54
14970
转载 常用的Input/Output 函数
1.textread函数:读取ASCII数据(.dat文件)>> [a b c d e]=textread('afile.dat','%f %f %f %f %f') %注意输入参数均为字符串格式a = 17 23 4 10 11b = 24 5 ...选择性读取部分内容:加*的相应位置忽略不读>> [a d
2015-05-22 17:45:13
4729
翻译 数据文件格式(使用save和load命令)
1..mat格式,文件可以在多种平台上运行(PC Mac Unix Linux),但无法在其他除matlab以外的软件上运行,因此,当数据只需在matlab之间运行时则保存为.mat文件,当需要在其他软件中运行时则要保存成.dat文件(ASCII文件)2.创建.dat格式的文件:save -ascii a.dat x a是文件名,x是被保存变量load命令:会在workspa
2015-05-22 16:56:44
1620
转载 matlab数据类型三(函数句柄)
创建函数句柄:两种方法---使用@、使用函数str2func1.使用@:hndl=@functionname,@表示将函数function赋值给函数句柄hndl2.hndl=str2func('functionname')使用方法:创建函数m文件--创建函数句柄--调用函数句柄当函数没有输入参数时,则调用函数句柄时参数部分输入空括号:>> h2=@rand;>> h2
2015-05-19 08:57:23
980
翻译 matlab数据类型二(单元变量、结构数组)
一.单元变量(元胞数组):一种特殊的数组,元素为元胞(cell),元胞数组中包含的是数据结构,而不是数据,一个元胞数组可以包含任何数据类型,因而用{}代替()显示元胞中元素的具体内容,用()显示元胞元素的数据类型。
2015-05-16 17:45:43
2907
转载 find函数
find函数用于返回所需要元素的所在位置 (位置的判定:在矩阵中,第一列开始,自上而下,依次为1,2,3...,然后再从第二列,第三列依次往后数)find(A)返回矩阵A中非零元素所在位置:>> A = [1 0 4 -3 0 0 0 8 6];>> X = find(A)X = 1 3 4 8 9find(A>5)返回矩阵A中大于
2015-05-16 17:13:56
1375
原创 稀疏矩阵
创建稀疏矩阵:函数speye、sprand、sprandn分别创建与eye、rand、randn对应的稀疏矩阵与普通矩阵的转换:函数sparse:将普通矩阵转为稀疏矩阵函数full:将稀疏矩阵转为普通矩阵对稀疏矩阵的操作:nnz:返回矩阵中非零元素的个数nonzeros:返回矩阵中非零元素,并将其组成一个矢量nzmax:非零元素所占用的存储空间s
2015-05-16 17:03:54
735
翻译 多维数组
创建多维数组的方法:直接赋值或者将通常的函数增加维数1.直接赋值:将矩阵a扩展为3维数组:>> a=[1 2 3;4 5 6]a = 1 2 3 4 5 6>> a(:,:,2)=[9 10 11;12 13 14];>> aa(:,:,1) = 1 2 3 4 5 6
2015-05-16 13:59:39
617
原创 nargchk和nargin
nargchk:判断输入值是否符合要求msgstring = nargchk(minargs, maxargs,numargs) :returns an error message string msgstring ifthe number of inputs specified in the call numargs isless than minargs or greater than
2015-05-16 11:43:26
1396
原创 fprintf和sprintf的区别
fprintf 是把格式化字符串输出到文件:fprintf(fileID,formatSpec,A1,...,An)sprintf是把格式化字符串输出到指定字符串中:str = sprintf(formatSpec,A1,...,An)
2015-05-16 00:04:14
852
转载 MATLAB下图示化符号计算器的使用
输入funtool即可进入图示化符号计算器:图示化符号计算器通过函数运算控制窗口来演示另外两个图形窗口,任何时候,只有一个窗口属于激活状态。而被激活的函数图像可随运算控制窗口的操作而做相应的变化。下面给出运算控制窗口的键位功能。前两行是函数 f 和 g 的具体解析式,第三行是自变量 x 的取值范围和常数 a 的值。第四行只对 f 起作用,如求导、积分、简化、提取
2015-05-07 09:33:41
2210
原创 求反函数
方法一:syms x b k >> f=1-(k/(k+x))^b;>> finverse(f,x) ans = (k*exp(0))/(1 - x)^(1/b) - k方法二:funtool,输入f=1-(k/(k+x))^b,点击finv
2015-04-30 15:34:47
1648
转载 显示希腊符号
text('interpreter','latex','string','$1-(\frac{\kappa}{\kappa+x})^\beta$','fontsize',20,'position',[.5 .5])
2015-04-30 15:33:06
600
转载 随机数
unifrnd ( A,B,m,n) :[A,B]上均匀分布(连续) 随机数 unidrnd(N,m,n):均匀分布(离散)随机数,数范围从1,2,...,N
2015-04-30 15:29:00
521
转载 执行函数的顺序
当在matlab中给出一个函数名后,matlab执行函数的顺序为:嵌套函数、子函数、私有函数、当前目录中的函数、全部路径中的函数,matlab会按照该顺序搜索并执行第一个搜索到的函数及停止搜索
2015-04-30 15:28:55
519
原创 主函数和子函数、私有函数、嵌套函数
同一个脚本文件中若有多个函数,则分为主函数和子函数,每个M文件都要求有一个主函数,它最先出现在该m文件中,与文件同名。主函数可以与该m文件外的其他函数相互作用,只要该文件所在目录属于matlab搜索路径;子函数subfunctions的执行范围:只能与该m文件中的其他函数相互作用,却不能被m文件之外的函数调用,子函数作为功能函数只是执行主函数的一部分工作。 私有函数:私有函数是主函数的一种
2015-04-30 15:26:47
3893
转载 function functions
(用户可以自己编写一个新的function function,方法同编写普通函数一致)(1)eval(string)是将括号内的字符串视为语句并运行,多在循环中使用。比如 :eval('y1=sin(2)')和语句y1=sin(2)等价例:把August1.mat 到August3.mat 加载到MATLAB workspace:for d=1:3 s = ['load
2015-04-30 15:23:26
430
原创 matlab创建新函数
对函数的注释说明要紧跟在函数下面,并与其他注释内容中间空一行,这样使用help函数查找该函数时只显示对函数的注释,不显示对其他内容的注释。例如:function [ave,std]=runstats(x)%runstats generates a running average and std%define>>help runstats runstats generat
2015-04-30 15:22:32
1347
原创 永久变量
格式:persistent var1 var2 var3 ... ①用persistent函数声明永久变量;②只能在函数文件中定义和使用,只允许定义它的函数存取;③当定义函数退出运行时,MATLAB不会清除它,下次调用它将会使用它原先被保留的值;创建新函数时要将关键变量设置为永久变量。④只有清除函数或者关闭MATLAB才能从内存中清除它们;⑤永久变量的默认初值被设置为“[]”,
2015-04-30 15:18:16
791
原创 全局变量----提供了在函数间分享数据的渠道
(1)用大写字母表示,便于与局部变量区分(2)一个全局变量必须在首次使用时就定义为全局的,不能在该变量已经作为局部变量使用后再定义其为全局变量(为避免错误,在define环节就将全局变量定义好)
2015-04-30 15:16:54
597
转载 matlab中脚本文件和函数文件有什么区别?
M文件可分为脚本文件(MATLAB scripts)和函数文件(MATLAB functions)。脚本文件 1.多条命令的综合体 2.没有输入、输出变量 3.使用MATLAB基本工作空间 4.没有函数声明行 函数文件1.常用于扩充MATLAB函数库 2.可以包含输入、输出变量 3.运算中生成的所有变量都存放在函数工作空间 4.包含函
2015-04-30 15:12:55
9326
转载 end函数
a=[1 2 3 4;5 6 7 8;9 10 11 12] a = 1 2 3 4 5 6 7 8 9 10 11 12>> a(1:end,2:end) %行从第一行开始到最后一行,列从第二列开始到最后一列ans = 2 3 4 6 7
2015-04-30 15:09:42
2158
转载 matlab文件存储
当matlab文档中的内容要在其他软件中使用时,存为ASCII类型,例如:>> save -ascii a.dat a(最后的a不能少)若只在matlab中使用,则存为mat格式文件加载:除了.mat格式的文档,matlab可以加载ASCII类型的文档(.dat格式),例如:load a.dat加载进的文档在工作区显示load -mat a.dat:把a.dat文档强行
2015-04-30 15:09:38
631
原创 matlab中vector、array和matrix的区别
vector:向量,即一维矩阵,用[]或 ,或;分隔。matrices(matrix):矩阵,二维数组,乘法运算用*,除法运算区分右除/和左除\,幂运算、开方运算不是对矩阵中的每个元素分别进行运算。array:数组,可以建立任意尺寸和维数,数组的建立、存储与矩阵完全相同,乘法用.*,除法区分./和.\,幂运算、开方运算是对数组中的每个元素分别进行运算。
2015-04-30 14:45:19
20377
转载 编写代码的步骤
(1)purpose:state the problem clearly and simply (2)define input and output:all variables and index (3)pseudocode(design the algorithm):in a text(top-down design) (4)write matlab code (5)test:验证和调试
2015-04-30 08:55:16
4774
原创 调试程序:两个方法可以结合使用
(1)设置断点F5:程序运行至第一个断点暂停,在断点右侧则出现向右指向的绿色箭头F10:单步调试查看中间变量:可以将鼠标停留在某个变量上,MATLAB将会自动显示该变量的当前值(2)M-Lint(代码分析器报告)常见错误:运行错误通常很难发现,用户在分析问题时要做到非常细心,并且有时需要做必要的验证,如对计算结果的验证等。
2015-04-29 17:01:41
367
转载 &和&&的区别: ("|"与“||”同理)
A&B:(1)首先判断A的逻辑值,然后判断B的值,然后进行逻辑与的计算。(2)A和B可以为矩阵(e.g. A=[1 0],B=[0 0])。A&&B:(1)首先判断A的逻辑值,如果A的值为假,就可以判断整个表达式的值为假,就不需要再判断B的值。(2)A和B不能是矩阵,只能是标量。
2015-04-29 16:53:45
533
原创 Matlab如何把for循环的结果以矩阵的形式显示
B=zeros(3,3);for i=1:3 for j=1:3 B(i,j)=i*j; endendB输出结果:B = 1 2 3 2 4 6 3 6 9
2015-04-29 16:25:40
30869
1
原创 数据类型
integer是整数,比如1,96,-10;single和double都是小数,比如3.1415,区别是single没有double精度高,single只能精确到小数点后6位左右,而double能到14位,而且double的范围比single大;string是字符串,比如"this is a string"。
2015-04-29 15:59:14
446
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人