Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.0.0 - 日本語


tabul

行列またはベクトルの値の頻度

呼び出し手順

[m]=tabul(X [,order])

パラメータ

X

ベクトルまたは行列 (実数または複素数または文字列)

order

(オプションの) 文字 "d" または "i" (デフォルト値: "d")を指定します

m

列行列 (X は数値ベクトルまたは行列) またはメンバー2つを有するリスト (X が文字列ベクトルまたは行列).

説明

この関数は,数値または文字列のベクトルまたは行列Xの 値の頻度を計算します :

X が数値のベクトルまたは行列の場合

m は2列の行列で, 最初の列にはXの異なる値, 他の列にはこれらの値の頻度が含まれます (m(i,2)はm(i,1)の出現頻度です).

X が文字列のベクトルまたは行列の場合

m はリストで, その最初のメンバーは Xの異なる値から構成される 文字列(列)ベクトル, 2番目のメンバーは その要素がこれらの値の頻度となる(列)ベクトルです (m(i)(2)は文字列m(i)(1)の出現頻度です).

オプションのパラメータorder は, "d" または "i" とする 必要があり (デフォルトは order="d"), Xの異なる値がソートされる順序(降順(d)または昇順(i))を指定します.

// 最初の例
X = [2 8 0 3 7 6 8 7 9 1 6 7 7 2 5 2 2 2 9 7]
m1 = tabul(X)
m2 = tabul(X, "i")
// 二番目の例
X = ["ba" "baba" "a" "A" "AA" "a" "aa" "aa" "aa" "A" "ba"]
m = tabul(X,"i")
// 3番目の例
n = 50000;
X = grand(n,1,"bin",70,0.5);
m = tabul(X,"i");
clf()
plot2d3(m(:,1), m(:,2)/n)
xtitle("empirical probabilities of B(70,0.5)")
// 最後の例 : scilabライセンスにおける単語の頻度を計算
text = read(SCI+"/COPYING",-1,1,"(A)");     // scilabライセンスを読む
bigstr = strcat(text," ");                  // 全ての行を一つの大きな文字列にする
sep =  [" " "," "." ";" "*" ":" "-" """"];  // 単語セパレータ
words = tokens(bigstr, sep);                // 大きな文字列を単語に分割
m = tabul(words);                           // 各単語の出現頻度を計算
[occ , p] = gsort(m(2));                    // 降順に頻度をソート
results = [m(1)(p) string(occ)]             // 結果を表示

参照

  • dsearch — 指定の分類で行列またはハイパー行列の要素を分配, 配置および数える
  • histplot — ヒストグラムをプロットする

参考文献

Wonacott, T.H. & Wonacott, R.J.; Introductory Statistics, fifth edition, J.Wiley & Sons, 1990.

Report an issue
<< quart Empirical distribution Multivariate - regress correl PCA >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Mar 07 09:28:47 CET 2023