Pythonでやっていたlistの操作にすっかり慣れてしまったけど、JuliaのArrayではどうやるか確かめる。
Julia0.3で試して動いたものを掲載。
Julia0.3で試して動いたものを掲載。
配列の生成
a = [i for i in 1:10] #1から10を要素に持つ配列生成
a = [1:10] #同上
b = reshape([1:9], (3,3)) #3x3の2次元配列。
b = [1 2 3; 4 5 6; 7 8 9] #3x3の2次元配列。上とは行、列が逆(転置の関係)
要素数
length(a)
要素アクセス
a[1]
a[1:end] #要素1から最後まで
a[2:3:8] #要素2から8を3個おきに
追加,挿入
push!(a, 13) #要素と同じ型追加
append!(a, [1,2,3]) #末尾に[1,2,3]を追加
prepend!(a, [1,2,3]) #先頭に[1,2,3]を追加
insert!(a, 3, 15) #3番目に15を挿入する。(要素数は増える)
vcat(a, [11,12,13]) #aに末尾に[11,12,13]を追加(aは非破壊になる)
hcat(b, [10,11,12]) #bに列を追加
vcat(b, [10,11,12]') #bに行を追加('は転置)
要素数があらかじめわかっているなら、始めに配列を確保して代入したほうが速いっぽい。置換
a[1] = 15
a[1:4] = [4,4,4,4]
#a[2:5]を削除して[0,0,0]を挿入。戻り値は削除した元のaの[2:5]の値。
splice!(a, 2:5, [0,0,0])
削除
shift!(a) #最初の要素を削除
pop!(a) #最後の要素を削除
検索
3 in a
findfirst(a, 4) #はじめに4が出る要素番号、なければ0を返す
findin(a, 4) #4の存在する要素数をArrayに入れて返す)
0 件のコメント:
コメントを投稿