matlab中為什麼M檔案裡會出經常現x x這個

2021-04-23 17:15:25 字數 3989 閱讀 2505

1樓:匿名使用者

例如x=x(3:5)表示把x的第3項到第5項保留,構成新的向量,仍然叫x

x=[1 2 3 4 5 6 7]

新的x=[3 4 5]

我在matlab裡試了一下,沒專有任何變化,屬不過如果是x=x(:)',那麼輸出的就是x的共軛

在matlab中x1=x(:,1);x2=x(:,2);是什麼意思

2樓: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文件具有權威性。遇到不會的問題可以查閱官方文件。

3樓:導超

首先,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=x(1:k);是什麼意思?

4樓:匿名使用者

表示取x的前k個元素, 如果前面已經存在變數x且其中的元素多於k個,則這個賦值語句相版當權於將原來的x的前k個元素賦值給當前的x,例:x=[1,2,3,4,5,6,7,8,9],假設k=6,則經過賦值語句x=x(1:6)後,x=[1,2,3,4,5,6]

5樓:春天的歪樹

x=a:b:c

在matlab中是給x賦值語句:

a,c為賦值的起始端,b為遞增(減)步長回。

.1表示

答0.1.

x=-2:.1:2意思是x=-2,-1.9,-1.8,-1.7,-1.6....0,0.1,0.2,0.3....2

matlab的m檔案,有一句是fprintf('x%.0f=%.0f\n',i,x);中的x%.0f=%.0f\n什麼意思啊?

6樓:匿名使用者

1、首先,fprintf如果沒指定檔案控制代碼,則直接在螢幕上輸出。2、格式字串中,其它內

版容都是原樣輸出,只權有百分號後面的內容是要轉換的,%2.0f表示要輸出的資料(即n)占用2個字元位置,其中小數0位(其實這種情況直接用%2i更好)。類似的,y1輸出佔12個字元位置,其中小數6位。

3、關於格式化輸出,最簡單的做法是,給變數賦值,然後執行該語句,看結果是否與預期一致,如果不一致再分析是**出了問題。

matlab中這個語句是什麼意思x(all(x==0,2),:)=[];

7樓:匿名使用者

all(x==0,2)表示檢查行向量是copy否為全零如果x=[0,0,0,0;0,0,1,0;1,1,0,0;0,0,0,0]

all(x==0,2)返回值為10

01x(all(x==0,2),:)=是將全零的行向量賦值為空,返回結果為

x=[0,0,1,0;1,1,0,0]

回答的不知是否準確

matlab語句中x(:,1)表示什麼意思?怎麼用的?謝謝!

8樓:匿名使用者

這是取列的表示方法,意思是取x矩陣的第一列,可以賦給其他向量。若x=【1,2,3;4,5,6】,那x(:,1)=[1;4],x(1,:)=[1,2,3],x(1,:)是取某一行

matlab中@(x)是什麼意思啊

9樓:匿名使用者

小毛老師教英語-單詞系列

matlab中語句f=@(x,y)exp(-x.^2/3).*sin(x.^2+2*y)中@(x,y)是什麼意思?

10樓:59分粑粑

matlab中語句f=@(x,y)exp(-x.^2/3).*sin(x.^2+2*y)中@(x,y)的意思如下:

其中的@(x,y)exp(-x.^2/3).*sin(x.^2+2*y)為匿名函式,第乙個括號裡面是自變數,第二個括號

裡面是表示式,@是函式指標。

f=@(x,y)exp(-x.^2/3).*sin(x.

^2+2*y)表示將匿名函式@(x,y)exp(-x.^2/3).*sin(x.

^2+2*y)賦值給f,於是f就表示該函式。

11樓:匿名使用者

這是個函式控制代碼 @(x,y) 表示未知數是x和ypunct - function handle creation @

@ 在匿名函式中表示函式控制代碼

例如ln(x),在matlab中是沒有定義的,正確表示是log(x);

但如果要直觀表示自然對數,意義用以下語句表示:

ln=@(x) log(x);

執行後,ln(4)=log(4) , 即用ln 替換 log。

以上表示可能無法看出『@』的好處,再看下例:

poly6 = @(x) 8*x.^6+6*x.^5+3*x.^3+x.^2+x+520;

fplot(ploy6,[0,100]);

fzero(ploy6,13);

在這種長且多次呼叫的情況下,用函式控制代碼就可以方便很多。

12樓:匿名使用者

^f=@(x,y)exp(-x.^2/3).*sin(x.^2+2*y)

其中@(x,y)exp(-x.^2/3).*sin(x.^2+2*y)為匿名函式,第乙個括號裡

面是自變數,第二個括號裡面是表示式,@是函式指標f=@(x,y)exp(-x.^2/3).*sin(x.

^2+2*y)表示將匿名函式@(x,y)exp(-x.^2/3).*sin(x.

^2+2*y)賦值給f,於是f就表示該函式。

matlab中M檔案if語句巢狀問題

在matlab中,選擇結構可由兩種語句來實現。1 if語句 if語句的最簡單用法為 if 表示式 程式模組 endif語句的另一種用法為 if 表示式 程式模組1 else 程式模組2 end例1 使用if語句判斷學生的成績是否及格。程式 clear n input 輸入n m 60 if n m,...

請問matlab中m檔案編輯器的不同顏色是怎麼設定的

背景bai顏色應該是從電腦上設定du的,調節後如瀏覽器視窗,zhiword,txt等背景dao顏色均隨之變化,win7下的 版修改方法 權 file preferences fonts colors matlab中m檔案編輯器不同部分有不同的顏色,如下圖上面紅色,下面白色,請問這是怎麼設定的?就是b...

如何在matlab的M檔案中輸入數學公式

按照公式描述的,基本的都可以表達出來,假如複雜些的,一般matlab都會有自己的函式庫,直接可以用的。如何在word文件中輸入數學公式 5 用woed2010就可以直接輸入了 低版本用公式編輯器輸入 在標題欄選擇 插入 在選擇 公式 如果沒有,最下方有輸入新公式 然後出現上圖,自己選擇所需輸入的內容...