1樓:旅成濟秋女
1:5表示是
(1,2,3,4,5)
這樣一個向量
x(1:n)
當然就是取x中前n個元素了.
你可以試試
x=magic(3)
a=x(1:5)的結果
2樓:包昊碩紅藝
意思是:x是一個從1到15的變數,間隔為1,就是x取
1,2,3,4.........15.如果寫成1:2:15
就是1,3,5,7,9........15,依此類推!
在matlab中x1=x(:,1);x2=x(:,2);是什麼意思
3樓:匿名使用者
這行**的意思是,從x這個矩陣中取出第一列
賦給x1,再從x矩陣中取出第二列賦給x2。執行後x1和x2是兩個列向量,分別是x這個矩陣第一列和第二列。
因為x1=x(:,1)和x2=x(:,2)的語法結構相同,因此僅以x1=x(:,1)為例,x2=x(:,2)以此類推。
1、等號左邊的x1=在matlab裡面代表賦值。賦值就是把等號右邊的值賦值給左邊的變數。所以x1將會得到等號右邊的數值。
2、等號右邊是x(:,1),其中x應在之前就已經定義過,否則單獨一句的**無法執行。由題可得x是一個矩陣。為方便講解x自定義了一個4行4列的矩陣,以它為例子。
3.、x後面的小括號是一種陣列的索引方法。陣列的索引就是取出陣列中的某一部分的操作。
假如要索引一個二維陣列,括號裡就要有兩個引數(行號和列號)。引數之間用逗號分隔。比如x(3,4)表示取出矩陣x第三行第四列的那個數。
在例子中是12。
4、 如果要索引陣列的一片區域,可在行或列引數裡用開始的行號:結束的行號這種格式表示要取連續的行或列。如x(1:
3,3:4) 就表示取出第1行到第3行並且還是第3列到第四列相交的一片區域,這樣取出的是一個小矩陣。
5、x(:,4)表示只要取出一列,就不用限定行,因此在行的引數一欄開始和結束行號都不寫,只留下一個冒號,來表示所有行都要保留,表示取出第四列。得到的是一個列向量。
6、 x1=x(:,1);x2=x(:,2); 連起來效果就是可以得到兩個列向量。
加了分號的命令可以寫在一行而且沒有任何輸出。你可以只輸入x1回車檢視x1的值,也可以到工作空間視窗雙擊檢視變數。最終執行結果如下:
擴充套件資料:
matlab常用函式
fix(x):無論正負,捨去小數至相鄰整數。
floor(x):下取整,即捨去正小數至相鄰整數。
ceil(x):上取整,即加入正小數至相鄰整數。
rat(x):將實數x化為多項分數。
rats(x):將實數x化為分數表示。
sign(x):符號函式(signum function)。
當x<0時,sign(x)=-1,
當x=0時,sign(x)=0,
當x>0時,sign(x)=1。
rem(x,y):求x除以y的餘數。
***(x,y):整數x和y的最大公因數。
lcm(x,y):整數x和y的最小公倍數。
exp(x) :自然指數。
pow2(x):2的指數。
log(x):以e為底的對數,即自然對數。
log2(x):以2為底的對數。
log10(x):以10為底的對數。
4樓:wayde神獸金剛
根據語境,這行**的意思是,從x這個矩陣中取出第一列賦給x1,再從x矩陣中取出第二列賦給x2。執行後x1和x2是兩個列向量,分別是x這個矩陣第一列和第二列。
解析:這是兩條語句寫在了一行上。以逗號分隔。第一句x1=x(:,1)和第二句x2=x(:,2)的語法結構是一樣的。這裡只以第一句為例。
1. 首先是開頭的x1=,這裡的=號在matlab裡面代表賦值。賦值就是把等號右邊的值複製給左邊的變數。因此x1將會得到等號右邊的東西。
2. 等號右邊是x(:,1)。
這個x在之前就已經定義過,否則單獨一句的**無法執行。按照這裡的語境,x是一個二維陣列,即矩陣。為方便講解x我自定義了一個4行4列的矩陣,以它為例子。
3. x後面的小括號是一種陣列的索引方法。陣列的索引就是取出陣列中的某一部分的操作。
假如要索引一個二維陣列,括號裡就要有兩個引數(行號和列號)。引數之間用逗號分隔。比如x(3,4)表示取出矩陣x第三行第四列的那個數。
在例子中是12。
4. 如果要索引陣列的一片區域,可在行或列引數裡用開始的行號:結束的行號這種格式表示要取連續的行或列。
如x(1:3,3:4) 就表示取出第1行到第3行並且還是第3列到第四列相交的一片區域,這樣取出的是一個小矩陣。
5.重點:如果只要取出一列,就不用限定行。
因此在行的引數一欄開始和結束行號都不寫,只留下一個冒號,來表示所有行都要保留。於是就有了這種寫法x(:,4)。
表示取出第四列。得到的是一個列向量。類似的,x(4,:
)則表示第四行。
6. x1=x(:,1);x2=x(:
,2); 連起來效果就是可以得到兩個列向量。加了分號的命令可以寫在一行而且沒有任何輸出。你可以只輸入x1回車檢視x1的值,也可以到工作空間視窗雙擊檢視變數。
最終執行結果如下:
mathworks是開發matlab的公司,mathworks中國上的matlab文件具有權威性。遇到不會的問題可以查閱官方文件。
5樓:導超
首先,x是一個矩陣,可以是方陣,也可以不是;
y=x(:,i)的作用就就是把矩陣x的第i列取出來賦值到y裡面,那麼得到的y就是一個列向量。
給你舉個例子;
a =2 3 4 53 4 5 6
4 5 6 7
5 6 7 8
>> x1=a(:,1)
x1 =23
45>> x2=a(:,2)
x2 =3456
matlab語句中x(:,1)表示什麼意思?怎麼用的?謝謝!
6樓:匿名使用者
這是取列的表示方法,意思是取x矩陣的第一列,可以賦給其他向量。若x=【1,2,3;4,5,6】,那x(:,1)=[1;4],x(1,:)=[1,2,3],x(1,:)是取某一行
matlab裡x = 0:.1:20;是什麼意思
7樓:匿名使用者
單位間隔,就是繪製的圖形是每隔0.1個單位描一個點,最終連線而成的。理論上這個數越小,圖形越精確
8樓:匿名使用者
x是陣列,在0-20之間間距為0.1的陣列
9樓:匿名使用者
生成一個向量,x從0到20,間隔0.1.即內x= 0 0.
1 0.2 0.3.....
20,共計201個值容
10樓:
x從0開始,每一步加0.1,一直到20為止。
matlab x( : ,1)什麼意思
11樓:丸子
這是取列的表示方法,意思是取x矩陣的第一列,可以賦給其他向量。若x=【1,2,3;4,5,6】,那x(:,1)=[1;4],x(1,:)=[1,2,3],x(1,:)是取某一行
12樓:啥智商
表示x(1,1),x(2,1),x(3,1)...等所有x的第一列元素所組成的一個列向量
13樓:匿名使用者
第一列如:x=[1 2 3;4 5 6;7 8 9]
x(:,1)=[1;4;7]
matlab中語句 x=1.╱(1+x.*x)什麼意思
14樓:匿名使用者
關鍵知bai識點:./ 指的是矩陣各元素du分別計算例如zhi
a = [2 3];
b = 1./a
b為[1/2 1/3],而1/a則表示a的逆。所以x=1.╱(
dao1+x.*x)
就表示分別讓
版x的每個元素都進行權x(i)=1╱(1+x(i)*x(i))運算例如clc
clear all
close all
%--- 程式段1 ---%
x = [1 2 3];
x = 1./(1+x.*x);
disp(x);
%--------------%
%--- 程式段2 ---%
x1 = [1 2 3];
for i=1:length(x)
x1(i) = 1/(1+x1(i)*x1(i));
enddisp(x1);
%--------------%
輸出為0.5000 0.2000 0.10000.5000 0.2000 0.1000即程式段1和程式段2結果相同,但程式段1執行速度更快
15樓:骨擺渡哥
假設x是一個m*n矩陣,x.*x是將x中每個元素自乘,得到仍為m*n矩陣。所以整句話的意思是x中每個元素y都做1/(1+y*y)的操作,得到新的x矩陣
MATLAB中abs x kx jeps什麼意思
eps 在 matlab 表示一個bai很小的量,大約是du 2e 16。由於 x k x j 要用作分zhi母,如果非常接近 0 的話dao 除出版來的結果就會誤權差很大,沒有意義。abs x k x j eps abs 表示絕對值,寫成數學式子就是 xk xj eps 表示這兩個數的差非常接近 ...
MATLAB中x1,23,4y12xy是什麼意思
x y是矩陣除法復,左除制,用bai於求解矩陣du方程 ax b,則 x a b,等 zhi同dao於 x inv a b如 x 1,2 3,4 y 1 2 x y ans00.5 inv x y ans 00.5 在這裡baix 是一個三維陣列,或du者說是三維矩陣,y x 1 是指 zhix中的...
matlab中a是什麼意思,matlab中a是什麼意思
表示遍歷所有,放在行上就是遍歷所有行,放在列上就是遍歷所有列,所以這個式子表達的就是取出所有的a元素,也就是取出a矩陣。matlab中a 是什麼意思 5 a 是把矩陣a轉換為一個行向量,就是一行。例如 a rand 2,3 a 0.6925 0.3965 0.78020.5567 0.0616 0....