Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português -

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Statistics > tabul

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+"/license.txt",-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 — ヒストグラムをプロットする

作者

  • Carlos Klimann (original author)
  • J.S. Giet and B. Pincon (new version)

参考文献

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

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Mar 03 11:00:56 CET 2011