Julia for MATLAB 使用者/核心語言/語言基礎
此頁面將 MATLAB 文件的 語言基礎 部分中記錄的 MATLAB 功能對映到等效的 Julia(核心語言和/或包)功能。
另一個有用的資源是 Julia 文件的 與 MATLAB 的顯著差異 部分。
相關:Julia REPL
Julia 的 ans 在功能上基本相同,不過請注意,它僅在 REPL 中可用。
Ctrl+L 在 Julia REPL 中幾乎等效,雖然它不會清除歷史記錄;您仍然可以向上滾動以檢視會話歷史記錄。您也可以等效地(在 Linux/Mac 上)在 shell 模式下執行 clear(1) 命令,即 ;+clear.
似乎沒有等效的 Julia REPL 命令。
在 Julia REPL 或 IJulia 中沒有用於全域性設定輸出格式的直接等效項。
Ctrl+L 在 Julia REPL 中功能等效。
似乎沒有等效的 Julia 命令,但請參閱 Julia 手冊中的 關鍵字。
請參閱 Julia 手冊中的 多維陣列。
Julia 的 zeros 和 ones 功能等效。請注意,用於指定結果資料型別的語法不同,例如 Julia: zeros(Int64, 3, 3) 與 MATLAB zeros(3,3, 'int64')。
請參閱 Julia 的 rand。
在 Julia 中,要構造一個數值單位矩陣,請使用類似 Matrix(1.0I, 3, 3) 的方法。請注意,符號 I 在 Julia 中是特殊的;它不是表示矩陣,而是 UniformScaling 運算子的例項,因此原則上,使用它比使用恰好在對角線上為 1,其他位置為 0 的稠密矩陣更有效。
diag 建立對角矩陣或獲取矩陣的對角元素
[edit | edit source]blkdiag 從輸入引數構造分塊對角矩陣
[edit | edit source]cat 沿指定維度連線陣列
[edit | edit source]horzcat 水平連線陣列
[edit | edit source]參見 Julia 的 hcat 函式
vertcat 垂直連線陣列
[edit | edit source]repelem 重複陣列元素的副本
[edit | edit source]repmat 重複陣列的副本
[edit | edit source]linspace 生成線性等間距向量
[edit | edit source]logspace 生成對數等間距向量
[edit | edit source]freqspace 頻率響應的頻率間距
[edit | edit source]meshgrid 2-D 和 3-D 網格
[edit | edit source]ndgrid N-D 空間中的矩形網格
[edit | edit source]length 最大陣列維度的長度
[edit | edit source]Julia 有一個 length 函式,但是它對多維陣列的操作方式與 Matlab 的不同。為了獲得與 Matlab 的 length(X) 相同的行為,在 Julia 中使用 maximum(size(X))。
size 陣列大小
[edit | edit source]ndims 陣列維度的數量
[edit | edit source]在 Julia 中,ndims 類似但並不完全相同。例如,Julia 不忽略單例維度。
numel 陣列元素的數量
[edit | edit source]在 Julia 中,length 等價。
isscalar 確定輸入是否為標量
[edit | edit source]isvector 確定輸入是否為向量
[edit | edit source]ismatrix 確定輸入是否為矩陣
[edit | edit source]isrow 確定輸入是否為行向量
[edit | edit source]iscolumn 確定輸入是否為列向量
[edit | edit source]isempty 確定陣列是否為空
[edit | edit source]sort 排序陣列元素
[edit | edit source]sortrows 對矩陣或表格的各行進行排序
[edit | edit source]issorted 判斷陣列是否已排序
[edit | edit source]issortedrows 判斷矩陣或表格的各行是否已排序
[edit | edit source]topkrows 按排序順序排列的前 k 行
[edit | edit source]flip 翻轉元素的順序
[edit | edit source]fliplr 將陣列從左翻轉到右
[edit | edit source]flipud 將陣列從上翻轉到下
[edit | edit source]rot90 將陣列旋轉 90 度
[edit | edit source]transpose 轉置向量或矩陣
[edit | edit source]ctranspose 複共軛轉置
[edit | edit source]permute 重新排列 N 維陣列的維度
[edit | edit source]ipermute 反轉 N 維陣列的維度排列
[edit | edit source]circshift 以迴圈方式移動陣列
[edit | edit source]shiftdim 移動維度
[edit | edit source]reshape 改變陣列的形狀
[edit | edit source]squeeze 刪除單元素維度
[edit | edit source]Julia 的 dropdims 函式類似,儘管它需要顯式指定單元素維度。
colon 向量建立、陣列下標和 for 迴圈迭代
[edit | edit source]end 終止程式碼塊,或指示最後一個數組索引
[edit | edit source]Julia 的 end 在本質上是等效的。
ind2sub 從線性索引獲取下標
[edit | edit source]sub2ind 將下標轉換為線性索引
[edit | edit source]運算子和基本運算
[edit | edit source]請參閱 Julia 手冊中的 數學運算和基本函式。
算術
[edit | edit source]plus 加法
[edit | edit source]uplus 一元加法
[edit | edit source]bsxfun 對兩個啟用隱式擴充套件的陣列執行逐元素操作
[edit | edit source]關係運算
[edit | edit source]eq 判斷相等性
[edit | edit source]ge 判斷大於或等於
[edit | edit source]gt 判斷大於
[edit | edit source]le 判斷小於或等於
[edit | edit source]lt 判斷小於
[edit | edit source]ne 判斷不等性
[edit | edit source]isequal 判斷陣列相等性
[edit | edit source]isequaln 判斷陣列相等性,將NaN值視為相等
[edit | edit source]邏輯運算
[edit | edit source]邏輯運算子:短路邏輯運算,帶短路功能
[edit | edit source]and 查詢邏輯與
[edit | edit source]not 查詢邏輯非
[edit | edit source]or 查詢邏輯或
[edit | edit source]xor 查詢邏輯異或
[edit | edit source]all 判斷所有陣列元素是否非零或為真
[edit | edit source]any 判斷陣列元素中是否存在非零元素
[edit | edit source]false 邏輯0(false)
[edit | edit source]find 查詢非零元素的索引和值
[edit | edit source]在Julia中,findall 提供類似的功能。 也可以參考 findfirst, findlast, findnext 和 findprev。
islogical 判斷輸入是否為邏輯陣列
[edit | edit source]logical 將數值轉換為邏輯值
[edit | edit source]true 邏輯 1 (true)
[edit | edit source]集合操作
[edit | edit source]intersect 兩個陣列的交集
[edit | edit source]ismember 陣列元素是集合陣列的成員
[edit | edit source]ismembertol 在容差範圍內集合的成員
[edit | edit source]issorted 判斷陣列是否已排序
[edit | edit source]setdiff 兩個陣列的差集
[edit | edit source]setxor 兩個陣列的異或
[edit | edit source]union 兩個陣列的並集
[edit | edit source]unique 陣列中的唯一值
[edit | edit source]uniquetol 在容差範圍內唯一值
[edit | edit source]join 使用關鍵變數按行合併兩個表或時間表
[edit | edit source]innerjoin 兩個表或時間表之間的內連線
[edit | edit source]outerjoin 兩個表或時間表之間的外連線
[edit | edit source]按位運算
[edit | edit source]bitand 按位與
[edit | edit source]bitcmp 按位取反
[edit | edit source]bitget 獲取指定位置的位
[edit | edit source]bitor 按位或
[edit | edit source]bitset 設定特定位置的位
[edit | edit source]bitshift 將位移位指定的位數
[edit | edit source]bitxor 按位異或
[edit | edit source]swapbytes 交換位元組順序
[edit | edit source]資料型別
[edit | edit source]參見 Julia 手冊中的 型別。