도움말
인텔리퀀트의 사용방법과 메뉴얼입니다.

Core

Core Functionality

핵심 기능에는 벡터 또는 행렬을 생성하고 분석하는 메소드가 포함됩니다.

jStat()

jStat 객체는 아래와 같이 여러 가지 기능을 수행 할 수 있습니다. 모든 경우에 jStat은 항상 자신의 인스턴스를 반환합니다.

jStat( array[, fn] )

기존의 배열 또는 jStat 객체에서 새 jStat 객체를 만듭니다. 예를 들어, 다음을 수행하여 새로운 jStat 행렬을 만들 수 있습니다. :

var matrix = jStat([[ 1, 2, 3 ],[ 4, 5, 6 ],[ 7, 8, 9 ]]);

기존의 jStat 객체가 인수로 전달되면 새로운 객체로 복제됩니다. :

var stat1 = jStat([[ 1, 2 ],[ 3, 4 ]]),
    stat2 = jStat( stat1 );

생성시 데이터를 변환하려면 함수를 마지막 인수로 전달하십시오. :

jStat([[ 1, 2 ],[ 3, 4 ]], function( x ) {
    return x * 2;
});

jStat( start, stop, count[, fn ])

시퀀스를 만들려면 jStat.seq()에 숫자값들을 넘길때처럼 하면 됩니다. :

var vector = jStat( 0, 1, 5 );
// vector === [[ 0, 0.25, 0.5, 0.75, 1 ]]

함수를 전달하면 시퀀스 값을 변경할 수 있습니다. :

var vector = jStat( 0, 1, 5, function( x ) {
    return x * 2;
});
// vector === [[ 0, 0.5, 1, 1.5, 2 ]];

함수에 전달 된 두번째 인수는 갯수 (0부터 시작)입니다. 이를 사용하여 다차원 배열을 만들 수 있습니다. (데이터 플로팅(plotting)에 유용함) :

var betaGraph = jStat( 0, 1, 11, function( x, cnt ) {
    return [ jStat.beta.pdf( x, alpha, beta ), cnt ];
});

jStat()

객체 생성 후 데이터를 채울 수 있도록 chainable한 쉬운 방법을 API로 제공합니다. 따라서 rand()와 같은 메소드로부터 jStat 객체를 생성하는 것은 다음 중 한가지 방법으로 수행 할 수 있습니다. :

// pass the generated random 3x3 matrix to jStat
jStat( jStat.rand( 3 ));
// or create an empty instance that is filled in afterwards
jStat().rand( 3 );

rows()

행렬의 행수를 돌려줍니다.

rows( array )

var matrix = [[1,2,3],[4,5,6]];
jStat.rows( matrix ) === 2;

fn.rows( [callback] )

jStat( matrix ).rows() === 2;

또는 콜백을 전달하여 계산을 비동기적으로 실행하고 계산을 전달하십시오. 이 방식에 의해, jStat 객체에의 메소드의 연속 체인이 가능하게 됩니다. 그리고 콜백 안에서 this는 호출하는 jStat 객체를 참조합니다.

jStat( matrix ).rows(function( d ) {
    // d === 2
    // this
});

cols()

행렬의 열수를 돌려줍니다.

cols( array )

var matrix = [[1,2,3],[4,5,6]];
jStat.cols( matrix ) === 3;

fn.cols( [callback] )

jStat( matrix ).cols() === 3;

또는 콜백을 전달하여 계산을 비동기적으로 실행하고 계산을 전달하십시오. 이 방식에 의해, jStat 객체에의 메소드의 연속 체인이 가능하게 됩니다. 그리고 콜백 안에서 this는 호출하는 jStat 객체를 참조합니다.

jStat( matrix ).cols(function( d ) {
    // d === 3
    // this
});

dimensions()

행렬의 크기를 갖는 객체를 반환합니다.

dimensions( array )

var matrix = [[1,2,3],[4,5,6]];
jStat.dimensions( matrix ) === { cols: 3, rows: 2 };

fn.dimensions( [callback] )

jStat( matrix ).dimensions() === { cols: 3, rows: 2 };

또는 콜백을 전달하여 계산을 비동기적으로 실행하고 계산을 전달하십시오. 이 방식에 의해, jStat 객체에의 메소드의 연속 체인이 가능하게 됩니다. 그리고 콜백 안에서 this는 호출하는 jStat 객체를 참조합니다.

jStat( matrix ).dimensions(function( d ) {
    // d === { cols: 3, rows: 2 }
    // this
});

row()

행렬의 특정 행을 반환합니다.

row( array, index )

var matrix = [[1,2,3],[4,5,6]];
jStat.row( matrix, 0 ) === [1,2,3];

fn.row( index[, callback] )

jStat( matrix ).row( 0 ) === jStat([1,2,3]);

또는 콜백을 전달하여 계산을 비동기적으로 실행하고 계산을 전달하십시오. 이 방식에 의해, jStat 객체에의 메소드의 연속 체인이 가능하게 됩니다. 그리고 콜백 안에서 this는 호출하는 jStat 객체를 참조합니다.

jStat( matrix ).row( 0, function( d ) {
    // d === jStat([1,2,3])
    // this
});

col()

지정된 열을 열 벡터로 반환합니다.

col( index )

var matrix = [[1,2],[3,4]];
jStat.col( matrix, 0 ) === [[1],[3]];

fn.col( index[, callback] )

jStat( matrix ).col( 0 ) === jStat([[1],[3]]);

또는 콜백을 전달하여 계산을 비동기적으로 실행하고 계산을 전달하십시오. 이 방식에 의해, jStat 객체에의 메소드의 연속 체인이 가능하게 됩니다. 그리고 콜백 안에서 this는 호출하는 jStat 객체를 참조합니다.

jStat( matrix ).col( 0, function( d ) {
    // d === jStat([[1],[3]])
    // this
})

diag()

행렬의 대각 원소들을 반환합니다.

diag( array )

var matrix = [[1,2,3],[4,5,6],[7,8,9]];
jStat.diag( matrix ) === [[1],[5],[9]];

fn.diag( [callback] )

jStat( matrix ).diag() === jStat([[1],[5],[9]]);

또는 콜백을 전달하여 계산을 비동기적으로 실행하고 계산을 전달하십시오. 이 방식에 의해, jStat 객체에의 메소드의 연속 체인이 가능하게 됩니다. 그리고 콜백 안에서 this는 호출하는 jStat 객체를 참조합니다.

jStat( matrix ).diag(function( d ) {
    // d === jStat([[1],[5],[9]])
});

antidiag()

행렬의 비대각 원소들을 반환합니다.

antidiag( array )

var matrix = [[1,2,3],[4,5,6],[7,8,9]];
jStat.antidiag( matrix ) === [[3],[5],[7]];

fn.antidiag( [callback] )

jStat( matrix ).antidiag() === jStat([[3],[5],[7]]);

또는 콜백을 전달하여 계산을 비동기적으로 실행하고 계산을 전달하십시오. 이 방식에 의해, jStat 객체에의 메소드의 연속 체인이 가능하게 됩니다. 그리고 콜백 안에서 this는 호출하는 jStat 객체를 참조합니다.

jStat( matrix ).antidiag(function( d ) {
    // d === jStat([[3],[5],[7]])
});

transpose()

행렬을 전치해서 반환합니다.

transpose( array )

var matrix = [[1,2],[3,4]];
jStat.transpose( matrix ) === [[1,3],[2,4]];

fn.transpose( [callback] )

jStat( matrix ).transpose() === [[1,3],[2,4]];

또는 콜백을 전달하여 계산을 비동기적으로 실행하고 계산을 전달하십시오. 이 방식에 의해, jStat 객체에의 메소드의 연속 체인이 가능하게 됩니다. 그리고 콜백 안에서 this는 호출하는 jStat 객체를 참조합니다.

jStat( matrix ).transpose(function( d ) {
    // d === jStat([[1,3],[2,4]])
})

map( func )

함수를 모든 값에 매핑하고 새 객체를 반환합니다.

map( array, fn )

var matrix = [[1,2],[3,4]];
jStat.map( matrix, function( x ) {
    return x * 2;
});
// returns [[2,4],[6,8]]

fn.map( fn )

jStat( matrix ).map(function( x ) {
    return x * 2;
});

cumreduce( func )

함수를 반복적으로 값들에 누적되게 적용하고 새 객체를 반환합니다.

cumreduce( array, fn )

var matrix = [[1,2],[3,4]];
jStat.cumreduce( matrix, function( a, b ) {
    return a + b;
});
// returns [[1,3],[3,7]]

fn.cumreduce( fn )

jStat( matrix ).cumreduce(function( a, b ) {
    return a + b;
});

alter( func )

함수를 배열에 직접 매핑합니다. 기존 배열의 값이 바뀌게 됩니다.

alter( array, fn )

var matrix = [[1,2],[3,4]];
jStat.alter( matrix, function( x ) {
    return x * 2;
});
// matrix === [[2,4],[6,8]]

fn.alter( fn )

var matrix = [[1,2],[3,4]];
jStat( matrix ).alter( function( x ) {
    return x * 2;
});

create()

제공된 함수를 사용하여 열과 행 행렬을 만듭니다. col이 생략된 경우 기본값은 row입니다.

create( row[, col], fn )

jStat.create( 2, function( row, col ) {
    return row + col;
});
// returns [[0,1],[1,2]]

fn.create( row[, col], fn )

jStat 인스턴스에서 행렬을 만드려면 이런 방법을 사용하세요.

jStat().create( 2, function( row, col ) {
    return row + col;
});
// returns jStat([[0,1],[1,2]])

zeros()

모두 0으로 구성된 열과 행 행렬을 만듭니다. col이 생략된 경우 기본값은 row입니다.

zeros( row[, col] )

jStat.zeros( 2 );
// returns [[0,0],[0,0]]

fn.zeros( row[, col] )

jStat 인스턴스에서 행렬을 만드려면 이런 방법을 사용하세요.

jStat().zeros( 2 );
// returns jStat([[0,0],[0,0]])

ones()

모두 1로 구성된 열과 행 행렬을 만듭니다. col이 생략된 경우 기본값은 row입니다.

ones( row[, col] )

jStat.zeros( 2 );
// returns [[0,0],[0,0]]

fn.ones( row[, col] )

jStat 인스턴스에서 행렬을 만드려면 이런 방법을 사용하세요.

jStat().ones( 2 );
// returns jStat([[0,0],[0,0]])

rand()

정규 분포 난수 행렬을 만듭니다. col이 생략 된 경우 기본값은 row입니다.

rand( row[, col] )

jStat.rand( 3 );

fn.rand( row[, col] )

jStat 인스턴스에서 행렬을 만드려면 이런 방법을 사용하세요.

jStat().rand( 3 );

identity()

단위 행렬을 만듭니다. col이 생략 된 경우 기본값은 row입니다.

identity( row[, col] )

jStat.identity( 2 );
// returns [[1,0],[0,1]]

fn.identity( row[, col] )

jStat 인스턴스에서 행렬을 만드려면 이런 방법을 사용하세요.

jStat().identity( 2 );

clear()

벡터 또는 행렬의 모든 값을 0으로 설정합니다.

clear( array )

var tmp = [1,2,3];
jStat.clear( tmp );
// tmp === [0,0,0]

fn.clear( [callback] )

jStat( 0, 1, 3 ).clear();
// returns [[0,0,0]]

콜백이 전달되면 원본 객체는 변경되지 않습니다.

var obj = jStat( 0, 1, 3 );
obj.clear(function() {
    // this === [ 0, 0, 0 ]
});
// obj === [ 0, 0.5, 1 ]

symmetric()

매트릭스가 대칭인지 테스트합니다.

symmetric( array )

jStat.symmetric([[1,2],[2,1]]) === true

fn.symmetric( callback )

jStat([[1,2],[2,1]]).symmetric() === true

chainability를 유지하기 위해 콜백을 전달할 수 있습니다.

jStat([[1,2],[2,1]]).symmetric(function( result ) {
    // result === true
});

jStat Utility Methods

jStat 라이브러리 전체에서 사용되는 유틸리티

utils.calcRdx( num0, num1 )

IEEE 754 floating point calculation correction(부동 소수점 계산 보정)에 대한 소수점 이동을 계산합니다.

utils.isArray( arg )

arg가 배열인지 테스트합니다.

utils.isFunction( arg )

arg가 함수인지 테스트합니다.

utils.isNumber( arg )

arg 숫자이고 NaN이 아닌지 테스트합니다.