資源描述:
《Julia 多維數(shù)組》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、Julia多維數(shù)組多維數(shù)組數(shù)組是?個(gè)存在多維?格中的對象集合。通常,數(shù)組包含的對象的類型為Any。對?多數(shù)計(jì)算??,數(shù)組對象?般更具體為Float64或Int32。因?yàn)樾阅艿脑颍琂ulia不希望把程序?qū)懗上蛄炕男问?。在Julia中,通過引?將參數(shù)傳遞給函數(shù)。Julia的庫函數(shù)不會修改傳遞給它的輸?。?戶寫代碼時(shí),如果要想做類似的功能,要注意先把輸?復(fù)制?份?。數(shù)組基礎(chǔ)函數(shù)函數(shù)說明eltype(A)A中元素的類型length(A)A中元素的個(gè)數(shù)ndims(A)A有?個(gè)維度nnz(A)A中?零元素的個(gè)數(shù)size(A)返回?個(gè)元素為A的
2、維度的多元組size(A,n)A在某個(gè)維度上的長度stride(A,k)在維度k上,鄰接元素(在內(nèi)存中)的線性索引距離返回多元組,其元素為在每個(gè)維度上,鄰接元素(在內(nèi)存中)的線性strides(A)索引距離構(gòu)造和初始化下列函數(shù)中調(diào)?的dims...參數(shù),既可以是維度的單多元組,也可以是維度作為可變參數(shù)時(shí)的?組值。函數(shù)說明Array(type,dims...)未初始化的稠密數(shù)組cell(dims...)未初始化的元胞數(shù)組(異構(gòu)數(shù)組)zeros(type,dims...)
3、指定類型的全0數(shù)組.如果未指明type,默認(rèn)為Float64zer
4、os(A)
5、全0數(shù)組,元素類型和??同A.ones(type,dims...)
6、指定類型的全1數(shù)組.如果未指明type,默認(rèn)為Float64ones(A)
7、全1數(shù)組,元素類型和??同A.trues(dims...)
8、全true的Bool數(shù)組falses(dims...)
9、全false的Bool數(shù)組reshape(A,dims...)將數(shù)組中的數(shù)據(jù)按照指定維度排列copy(A)
10、復(fù)制Adeepcopy(A)
11、復(fù)制A,并遞歸復(fù)制其元素屬性與輸?數(shù)組(稠密、稀疏等)相同的similar(A,element_type,未初始化數(shù)組,但指明了元
12、素類型和維dims...)度。第?、三參數(shù)可省略,省略時(shí)默認(rèn)為A的元素類型和維度?進(jìn)制數(shù)據(jù)與輸?數(shù)組相同的數(shù)組,但指reinterpret(type,A)明了元素類型rand(dims)
13、在[0,1)上獨(dú)?均勻同分布的Float64類型的隨機(jī)數(shù)組randn(dims)
14、Float64類型的獨(dú)?正態(tài)同分布的隨機(jī)數(shù)組,均值為0,標(biāo)準(zhǔn)差為1eye(n)
15、nxn單位矩陣eye(m,n)
16、mxn單位矩陣linspace(start,stop,n)
17、從start?stop的由n個(gè)元素構(gòu)成的線性向量fill!(A,x)
18、?值x填充數(shù)組Afill(x
19、,dims)
20、創(chuàng)建指定規(guī)模的數(shù)組,并使?x填充連接使?下列函數(shù),可在任意維度連接數(shù)組:函數(shù)描述cat(k,A...)
21、在k維度上連接輸?n-d數(shù)組vcat(A...)
22、cat(1,A...)的簡寫hcat(A...)
23、cat(2,A...)的簡寫傳遞給這些函數(shù)的標(biāo)量值被視為?元陣列。級聯(lián)功能?常常?,所以為它們設(shè)計(jì)了特殊的語法:表?調(diào)?[ABC...]
24、hcat[A,B,C,...]
25、vcat[AB;CD;...]
26、hvcathvcat可以實(shí)現(xiàn)?維上的(使?分號間隔)或?維上的(使?空格間隔)的級聯(lián)。ComprehensionsCom
27、prehensions?于構(gòu)造數(shù)組。它的語法類似于數(shù)學(xué)中的集合標(biāo)記法:A=[F(x,y,...)forx=rx,y=ry,...]F(x,y,...)根據(jù)變量x,y等來求值。這些變量的值可以是任何迭代對象,但?多數(shù)情況下,都使?類似于1:n或2:(n-1)的范圍對象,或顯式指明為類似[1.2,3.4,5.7]的數(shù)組。它的結(jié)果是N維稠密數(shù)組。下例計(jì)算在維度1上,當(dāng)前元素及左右鄰居元素的加權(quán)平均數(shù):julia>constx=rand(8)8-elementArray{Float64,1}:0.8430250.8690520.3651050
28、.6994560.9776530.9949530.410840.809411julia>[0.25*x[i-1]+0.5*x[i]+0.25*x[i+1]fori=2:length(x)6-elementArray{Float64,1}:0.7365590.574680.6854170.9124290.84460.656511注解:上例中,x被聲明為常量,因?yàn)閷τ?常量的全局變量,Julia的類型推斷不怎么樣。可在comprehension之前顯式指明它的類型。如要避免在前例中聲明x為常量,但仍要確保結(jié)果類型為Float64,應(yīng)這樣寫
29、:Float64[0.25*x[i-1]+0.5*x[i]+0.25*x[i+1]fori=2:length(x)使?花括號來替代?括號,可以將它簡寫為Any類型的數(shù)組:julia>{i/2fori=1:3}3-elem