week1:MATLAB/octave 用法

1 Basic operation
加减乘除指数
3 - 25 x 8
1/2
2^6
等于不等于,或且非运算,结果是1 或者 0
1==2
true == false
true != false
true | false
true & false
~true
小数的长短格式
format short : 14位小数
format long: 4位小数
a = [1:0.2:2] :以0.2为步长,1到2的一维数组
Rand(3) : 1x3 随机数字数组
Randn(2,3): 2x3 随机正态分布数组
hist() :直方图
ones(3) :1x3全一数组
zeros(3,4): 3x4 全零数组
eye(4): 4x4单位矩阵
help eye:获取eye函数的帮助文档
clear: 清空内存变量
clc: 清空工作区内的内容
linspace(0,10,5) answer: [0,2.5,5,7.5,10]

2 Moving Data Around
A=[1,2,3;4,5,6] :生成一个2x3的矩阵
size(A) :获得[2,3],分别是A的行数和列数
size(A,1): 结果是2,返回A的行数
length(A): 结果是A的较大的维度的数值,这里结果为3

pwd 打印当前路径
cd ‘C:\USER\XXX\’ 可以修改当前路径
ls 列出当前路径下的文件列表
load('featureX.dat') 可以用来加载文件中的数据(格式规范的数据,行列)
who 可以列出当前工作区有效的变量
whos可以列出更为详细的信息
v = featureX(1:10) v赋值为featureX的前10个元素组成的数组
save hello.mat v 可以把v的数值存储到hello.mat中,这里连变量名字也一起存储了,二进制格式
clear 可以清掉工作台上所有的变量
load hello.mat 可以把变量v恢复回来
save hello.txt v -ascii %以文本方式存储
A(2,3) 可以得到第二行第三列的A的元素
A(2,:) 可以获得第二行的所有元素
A([1 3], :) 可以获得第一行和第三行的所有数据
A(:,2) = [1;2;3] 可以修改A的元素内容
A = [A, [1;2;3]] 相当于在A的右边增加一列
A(:) 获得把所有列,排列成为一列的输出
C = [A B] 把A,B并排做成一个矩阵
C = [A;B] 把B补充为A新的行

3 Computing on Data
A = [1,2;3,4]
B = [1,2;3,4]
C = A.B 点乘表示对应位置的数字相乘
C = A
B 矩阵相乘
A = B.^2 每个元素平方组成新的矩阵
B^2 就变成两个B相乘了
C = 1./ A 这样可以得到每个元素的倒数
log(A) 这个也是针对每个元素的操作
exp(A) 返回自然常熟e的A指数矩阵
abs(A) 每个元素的绝对值矩阵
-1 * A 给A的每个元素乘以一个倍数
A + ones(length(A), size(A,2)), 可以给A的每个元素增加一个1
A + 1 每个元素增加1
A' 表示A的转置,这里的符号是左单引号

A = [1,2,3,4,5]
max(A) :这里只返回最大值
[val,ind] = max(A) :这里的结果val是最大值,ind是最大值的index
A<3 这里的比较操作也是每个元素单独进行的
find(A<3) :结果会返回A中小于3的所有元素的index

A = magic(3), 会生成一个3x3的矩阵,每一行每一列加的结果相等
[r,c] = find(A < 3) : r是所有满足结果的行号,c是响应的列好

A = [1 2 3 4 5]
sum(A) 返回A的所有元素的和
prod(A) 返回素有A的元素的积
floor(A), ceil(A) 返回A中所有元素的round之后的值
max(A,[],1) 返回A的没列的最大值
max(A,[],2) 返回A的每行的最大值

A = [1 2; 2 1]
max(A) : 结果是2 2,是没列的最大值
max(max(A)) 可以求得全局最大值
max(A(:)) 也可以可以求得全局最大值

A = [1 3; 2 5]
sum(A) 返回每列的和
sum(A, 1) 同上
sum(A, 2) 每行和

那么我们怎么计算A的对角线的和呢
B = A.* eye(2)
sum(sum(B)) 就是A的对角线的元素的和

flipud(A) 可以把A的元素翻转,指的是每列的内容都进行翻转
pinv(A) 计算A的逆

3 Plotting Data
x = [0:0.01:0.98]
y = sin(2pi4x)
plot(x,y) 可以画出正弦曲线来


hold on 可以继续在之前的图上继续画新的图像
y2 = cos(2
pi4x)
plot(x,y2,'r') 可以在上一个正弦曲线的基础上画出一条红色的余弦曲线
xlabel(‘time’)
ylabel('value') 为横纵坐标轴加上lable
legend('sin', 'cos') 标注每个曲线的名称
title('my figure')
print -dpng 'my.png' 这之前可以修改cd路径

也可以在不同的图上面画不同的曲线
figure(1); plot(x,y);
figure(2); plot(x,y2) 这样就会有两个图,每个上面有一个曲线

subplot(1,2,1); plot(x,y);
subplot(1,2,2); plot(x,y2); 这样两个曲线在同一个frame里面,这个frame分成了1x2的部分,y=f(x)在其中的第一个部分,另一个在第二部分

axis([0.5 1 -1 1]) 这样可以设置图像横纵坐标的取值范围,分别为[0.5 1] 和[-1 1]



clf; clear figure

A=magic(5)
imagesc(A)



imagesc(A), colorbar, colormap gray

4 控制语句

for loop
v = zeros(10)
for i=1:10,
v(i) = 2^i;
end;

indices = 1:10
for i=indices,
disp(i);
end;

while
i = 0;
while i<5,
v(i)=100;
i = i+1;
end;

i = 0;
while i<10,
v(i)=100;
i = i+1;
if i == 6,
break;
end;
end;
if i==1,
disp(i);
elseif i==2,
disp(i);
else
disp(i);
end;

Function
function y = sqareThisNum(x)
y = x^2;

就可以调用函数sqareThis Num()了,他有一个input X, 一个output Y

function [y1,y2] = my_func(x)
y1 = x^2;
y2 = x^3;

[a,b] = my_func(5); 可以这样调用函数

addpath('C:\XXX\XXAAA\AAA'); 可以把路径加入octave的搜索路径中

5 Vectorrization
Octave的index是从1开始的

转载自 http://blog.csdn.net/yunlong34574/article/details/8856990

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,482评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,377评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,762评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,273评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,289评论 5 373
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,046评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,351评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,988评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,476评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,948评论 2 324
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,064评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,712评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,261评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,264评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,486评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,511评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,802评论 2 345

推荐阅读更多精彩内容