LoginSignup
11
11

More than 3 years have passed since last update.

Julia言語のよく使う基礎的な関数一覧

Posted at

はじめに

自分にとっての、雑な忘備録です。
細かい使用例やオプションはJuliaでの調べ方いろいろ(Qiita)を参考に確認しましょう。
(Jupyterでは関数名の後で[Shift]+[tab]のDoc表示がお手軽です)


数値演算系

どの言語でもありがちなやつ、説明なしで列挙
 sum,round,ceil,floor,round,sin,cos,tan,sinh,cosh,exp,max,min

その他数値演算系
関数名 説明
maximam(a) 配列aの最大値を返す
minumun(a) 配列aの最小値を返す

配列関連

関数名 説明
zeros((T,)m;...) 全て(型T)0の配列[m;...]を返す
ones((T,)m;...) 全て(型T)1の配列[m;...]を返す
rand((T,)m;...) T(配列等可)の乱数で埋められた配列[m,...]を返す
fill(x;m;...) 変数xで埋められた配列[m;...]を返す
similar(a) 配列aと同じ型の配列(初期化なし)を返す
copy(a) 配列aのシャローコピーを返す
deepcopy(a) 配列aのディープコピーを返す
reshape(a,m;...) 配列aのサイズを[m;...]に変更したものを返す
Array{T}(undef,m;...) Tの配列[m;...](初期化なし)を返す

古いversion(0.6とか)から挙動が変わってきた

行列関連

関数名 説明
Vector{T}(undef,m) Tの配列(1次元)[m](初期化なし)を返す
Matrix{T}(undef,m,n) Tの配列(2次元)[m,n](初期化なし)を返す
transpose(a) 配列aの転置を返す
adjoint(a) 配列aのエルミート共役を返す(a'の方が楽)
inv(a) 配列aの逆行列を返す

配列と表を分けたけど、使う上で区別はないです。

型関連

関数名 説明
typeof(x) 変数xの型を返す
length(a) 配列aの要素数を返す
size(a) 配列aのサイズを返す
dims(a) 配列aの次元数を返す
convert(T,x) 数値xを型Tに変換
parse(T,s) テキストsを数値型Tに変換
"$(x)" 変数xをテキストに変換(関数とは違うけど)

ファイル操作

関数名 説明
cd(p) ディレクトリpに移動
pwd() 親ディレクトリを返す
readdir(p;join=true) ディレクトリp内のファイル・フォルダ名一覧を返す
joinpath(p1,p2,...) パスの結合
isfile(p) pがファイルであるかの判定
isdir(p) pがフォルダであるかの判定
cp(src,dst;force=true) srcdstにコピー(強制)
mv(src,dst;force=true) srcdstに移動(強制)
rm(p;force=true,recursive=true) ファイル`p{の削除(強制)(再帰的)
touch(p) ファイルpが存在しなければ作成
mkdir(p) フォルダpの作成
mkpath(p) パスpまでのフォルダの作成

unix系のコマンドそのままが多数

入出力(IOストリーム)関連

関数名 説明
print((io,)s) (ストリームioに)テキストsの出力
println((io,)s) (ストリームioに)テキストsの出力し改行
open(p;"r" or "a" or "w" or...) ファイルpのIOストリームを(各読取りモードで)返す
write(io,s) パス・ストリームioにテキストsを書き込み、そのバイト数を返す
readline(;io) (パス・ストリームioを)1行読み込む・標準入力では入力待ち
readlines(io) パス・ストリームioの各行を配列で返す
close(io) ストリームioを閉じる

openは下の様にdo ~ endすると、最後closeされる。

open(p) do io
  処理(io,...)
end

文字列操作

関数名 説明
join(s1,s2,...) テキストの結合
split(s,dlm) テキストsdlmで配列に分割(dlm=""で1字づつ)
uppsercase(s) テキストsを大文字に
lowercase(s) テキストsを小文字に
contains(s,r) テキストsr(正規表現可)が含まれるか判定
occursin(r,s) テキストsr(正規表現可)が含まれるか判定
findfirst(r,s) テキストsr(正規表現可)が含まれる最初の箇所を返す
findlast(r,s) テキストsr(正規表現可)が含まれる最後の箇所を返す
findall(r,s) テキストsr(正規表現可)が含まれる全ての箇所を返す
replace(s,A=>B,...;count=n) テキストs内のABに(n回まで)変える

テキスト操作に限らない関数多数


ひとまずこんな所
julia 1.4.2で確認

11
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
11