이 문서는 AI에 의해 번역되었습니다. 정확한 정보는 영어 버전을 참조하세요.
Math.js는 JavaScript 및 Node.js를 위한 풍부한 기능을 갖춘 수학 라이브러리입니다.
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| compile | 표현식을 파싱하고 컴파일합니다 (파싱만 수행하며 결과를 직접 반환하지는 않습니다). | compile('2 + 3') | 표현식 (문자열) | {} |
| evaluate | 표현식을 계산하고 결과를 반환합니다. | evaluate('2 + 3') | 표현식 (문자열), 스코프 (선택 사항) | 5 |
| help | 함수 또는 데이터 타입에 대한 사용 설명서를 검색합니다. | help('evaluate') | 검색 키워드 (문자열) | { "name": "evaluate", "category": "Excodession", "syntax": [ "evaluate(excodession)", "evaluate(excodession, scope)", "evaluate([expr1, expr2, expr3, ...])", "evaluate([expr1, expr2, expr3, ...], scope)" ], "description": "Evaluate an excodession or an array with excodessions.", "examples": [ "evaluate(\"2 + 3\")", "evaluate(\"sqrt(16)\")", "evaluate(\"2 inch to cm\")", "evaluate(\"sin(x * pi)\", { \"x\": 1/2 })", "evaluate([\"width=2\", \"height=4\",\"width*height\"])" ], "seealso": [], "mathjs": "Help"} |
| parser | 사용자 정의 작업을 위한 파서를 생성합니다. | parser() | 없음 | {} |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| derivative | 지정된 변수에 대해 표현식을 미분합니다. | derivative('x^2', 'x') | 표현식 (문자열 또는 노드), 변수 (문자열) | { "mathjs": "OperatorNode", "op": "*", "fn": "multiply", "args": [ { "mathjs": "ConstantNode", "value": 2 }, { "mathjs": "SymbolNode", "name": "x" } ], "implicit": false, "isPercentage": false} |
| leafCount | 표현식 트리에서 리프 노드(기호 또는 상수)의 개수를 셉니다. | leafCount('x^2 + y') | 표현식 (문자열 또는 노드) | 3 |
| lsolve | 전진 대입법(forward substitution)을 사용하여 선형 방정식 시스템의 해를 구합니다. | lsolve([[1,2],[3,4]], [5,6]) | L (배열 또는 행렬), b (배열 또는 행렬) | [ [ 5 ], [ -2.25 ]] |
| lsolveAll | 전진 대입법을 사용하여 선형 방정식 시스템의 모든 해를 구합니다. | lsolveAll([[1,2],[3,4]], [5,6]) | L (배열 또는 행렬), b (배열 또는 행렬) | [ [ [ 5 ], [ -2.25 ] ]] |
| lup | 행렬에 대해 부분 피벗팅 LU 분해를 수행합니다. | lup([[1,2],[3,4]]) | A (배열 또는 행렬) | { "L": [ [ 1, 0 ], [ 0.3333333333333333, 1 ] ], "U": [ [ 3, 4 ], [ 0, 0.6666666666666667 ] ], "p": [ 1, 0 ]} |
| lusolve | 선형 방정식 A*x=b를 풉니다 (A는 n×n 행렬). | lusolve([[1,2],[3,4]], [5,6]) | A (배열 또는 행렬), b (배열 또는 행렬) | [ [ -3.9999999999999987 ], [ 4.499999999999999 ]] |
| qr | 행렬의 QR 분해를 수행합니다. | qr([[1,2],[3,4]]) | A (배열 또는 행렬) | { "Q": [ [ 0.316227766016838, 0.9486832980505138 ], [ 0.9486832980505138, -0.316227766016838 ] ], "R": [ [ 3.162277660168379, 4.427188724235731 ], [ 0, 0.6324555320336751 ] ]} |
| rationalize | 유리화 가능한 표현식을 유리 분수로 변환합니다. | rationalize('1/(x+1)') | 표현식 (문자열 또는 노드) | { "mathjs": "OperatorNode", "op": "/", "fn": "divide", "args": [ { "mathjs": "ConstantNode", "value": 1 }, { "mathjs": "OperatorNode", "op": "+", "fn": "add", "args": [ { "mathjs": "SymbolNode", "name": "x" }, { "mathjs": "ConstantNode", "value": 1 } ], "implicit": false, "isPercentage": false } ], "implicit": false, "isPercentage": false} |
| resolve | 표현식의 기호를 제공된 스코프(scope)의 값으로 바꿉니다. | resolve('x + y', {x:2, y:3}) | 표현식 (문자열 또는 노드), 스코프 (객체) | { "mathjs": "OperatorNode", "op": "+", "fn": "add", "args": [ { "mathjs": "ConstantNode", "value": 2 }, { "mathjs": "ConstantNode", "value": 3 } ], "implicit": false, "isPercentage": false} |
| simplify | 표현식 트리를 단순화합니다 (동류항 결합 등). | simplify('2x + 3x') | 표현식 (문자열 또는 노드) | { "mathjs": "OperatorNode", "op": "*", "fn": "multiply", "args": [ { "mathjs": "ConstantNode", "value": 5 }, { "mathjs": "SymbolNode", "name": "x" } ], "implicit": false, "isPercentage": false} |
| simplifyCore | 단일 패스(one-pass) 단순화를 수행하며, 주로 성능이 중요한 상황에서 사용됩니다. | simplifyCore('x+x') | 표현식 (문자열 또는 노드) | { "mathjs": "OperatorNode", "op": "+", "fn": "add", "args": [ { "mathjs": "SymbolNode", "name": "x" }, { "mathjs": "SymbolNode", "name": "x" } ], "implicit": false, "isPercentage": false} |
| slu | 전체 피벗팅 방식으로 희소 LU 분해(sparse LU decomposition)를 계산합니다. | slu(sparse([[4,3], [6, 3]]), 1, 0.001) | A (배열 또는 행렬), 분해 순서 (문자열), 임계값 (숫자) | { "L": { "mathjs": "SparseMatrix", "values": [ 1, 1.5, 1 ], "index": [ 0, 1, 1 ], "ptr": [ 0, 2, 3 ], "size": [ 2, 2 ] }, "U": { "mathjs": "SparseMatrix", "values": [ 4, 3, -1.5 ], "index": [ 0, 0, 1 ], "ptr": [ 0, 1, 3 ], "size": [ 2, 2 ] }, "p": [ 0, 1 ], "q": [ 0, 1 ]} |
| symbolicEqual | 두 표현식이 기호적으로 동일한지 확인합니다. | symbolicEqual('x+x', '2x') | 표현식1 (문자열 또는 노드), 표현식2 (문자열 또는 노드) | true |
| usolve | 후진 대입법(back substitution)을 사용하여 선형 방정식 시스템의 해를 구합니다. | usolve([[1,2],[0,1]], [3,4]) | U (배열 또는 행렬), b (배열 또는 행렬) | [ [ -5 ], [ 4 ]] |
| usolveAll | 후진 대입법을 사용하여 선형 방정식 시스템의 모든 해를 구합니다. | usolveAll([[1,2],[0,1]], [3,4]) | U (배열 또는 행렬), b (배열 또는 행렬) | [ [ [ -5 ], [ 4 ] ]] |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| abs | 숫자의 절댓값을 계산합니다. | abs(-3.2) | x (숫자, 복소수, 배열 또는 행렬) | 3.2 |
| add | 두 개 이상의 값을 더합니다 (x + y). | add(2, 3) | x, y, ... (숫자, 배열 또는 행렬) | 5 |
| cbrt | 숫자의 세제곱근을 계산하며, 선택적으로 모든 세제곱근을 계산할 수 있습니다. | cbrt(8) | x (숫자 또는 복소수), allRoots (불리언, 선택 사항) | 2 |
| ceil | 양의 무한대 방향으로 올림합니다 (복소수의 경우 실수부와 허수부를 각각 올림). | ceil(3.2) | x (숫자, 복소수, 배열 또는 행렬) | 4 |
| cube | 값의 세제곱을 계산합니다 (xxx). | cube(3) | x (숫자, 복소수, 배열 또는 행렬) | 27 |
| divide | 두 값을 나눕니다 (x / y). | divide(6, 2) | x (숫자, 배열 또는 행렬), y (숫자, 배열 또는 행렬) | 3 |
| dotDivide | 두 행렬 또는 배열을 요소별로 나눕니다. | dotDivide([6,8],[2,4]) | x (배열 또는 행렬), y (배열 또는 행렬) | [ 3, 2] |
| dotMultiply | 두 행렬 또는 배열을 요소별로 곱합니다. | dotMultiply([2,3],[4,5]) | x (배열 또는 행렬), y (배열 또는 행렬) | [ 8, 15] |
| dotPow | x^y를 요소별로 계산합니다. | dotPow([2,3],[2,3]) | x (배열 또는 행렬), y (배열 또는 행렬) | [ 4, 27] |
| exp | e^x를 계산합니다. | exp(1) | x (숫자, 복소수, 배열 또는 행렬) | 2.718281828459045 |
| expm1 | e^x - 1을 계산합니다. | expm1(1) | x (숫자 또는 복소수) | 1.718281828459045 |
| fix | 0 방향으로 정수화합니다 (절삭). | fix(3.7) | x (숫자, 복소수, 배열 또는 행렬) | 3 |
| floor | 음의 무한대 방향으로 내림합니다. | floor(3.7) | x (숫자, 복소수, 배열 또는 행렬) | 3 |
| gcd | 두 개 이상의 숫자에 대한 최대공약수를 구합니다. | gcd(8, 12) | a, b, ... (숫자 또는 BigNumber) | 4 |
| hypot | 여러 숫자의 제곱합의 제곱근을 계산합니다 (피타고라스 정리). | hypot(3, 4) | a, b, ... (숫자 또는 BigNumber) | 5 |
| invmod | a의 b에 대한 모듈로 곱셈 역원을 계산합니다. | invmod(3, 11) | a, b (숫자 또는 BigNumber) | 4 |
| lcm | 두 개 이상의 숫자에 대한 최소공배수를 구합니다. | lcm(4, 6) | a, b, ... (숫자 또는 BigNumber) | 12 |
| log | 로그를 계산합니다 (밑 지정 가능). | log(100, 10) | x (숫자 또는 복소수), base (선택 사항, 숫자 또는 복소수) | 2 |
| log10 | 숫자의 상용로그(밑이 10)를 계산합니다. | log10(100) | x (숫자 또는 복소수) | 2 |
| log1p | ln(1 + x)를 계산합니다. | log1p(1) | x (숫자 또는 복소수) | 0.6931471805599453 |
| log2 | 숫자의 이진로그(밑이 2)를 계산합니다. | log2(8) | x (숫자 또는 복소수) | 3 |
| mod | x ÷ y의 나머지(x mod y)를 계산합니다. | mod(8,3) | x, y (숫자 또는 BigNumber) | 2 |
| multiply | 두 개 이상의 값을 곱합니다 (x * y). | multiply(2, 3) | x, y, ... (숫자, 배열 또는 행렬) | 6 |
| norm | 숫자, 벡터 또는 행렬의 노름(norm)을 계산합니다 (p 선택 가능). | norm([3,4]) | x (배열 또는 행렬), p (숫자 또는 문자열, 선택 사항) | 5 |
| nthRoot | 숫자의 n제곱근(주근)을 계산합니다. | nthRoot(16, 4) | a (숫자, BigNumber 또는 복소수), root (선택 사항, 숫자) | 2 |
| nthRoots | 숫자의 모든 n제곱근을 계산합니다 (복소수 해 포함 가능). | nthRoots(1,3) | x (숫자 또는 복소수), root (숫자) | [ { "mathjs": "Complex", "re": 1, "im": 0 }, { "mathjs": "Complex", "re": -0.4999999999999998, "im": 0.8660254037844387 }, { "mathjs": "Complex", "re": -0.5000000000000004, "im": -0.8660254037844384 }] |
| pow | x의 y제곱을 계산합니다. | pow(2, 3) | x (숫자, 복소수, 배열 또는 행렬), y (숫자, 복소수, 배열 또는 행렬) | 8 |
| round | 지정된 소수점 자릿수까지 반올림합니다. | round(3.14159, 2) | x (숫자, 복소수, 배열 또는 행렬), n (선택 사항, 숫자) | 3.14 |
| sign | 수치의 부호를 계산합니다 (-1, 0, 또는 1). | sign(-3) | x (숫자, BigNumber 또는 복소수) | -1 |
| sqrt | 숫자의 제곱근을 계산합니다. | sqrt(9) | x (숫자, 복소수, 배열 또는 행렬) | 3 |
| square | 값의 제곱을 계산합니다 (x*x). | square(3) | x (숫자, 복소수, 배열 또는 행렬) | 9 |
| subtract | 두 값을 뺍니다 (x - y). | subtract(8, 3) | x, y (숫자, 배열 또는 행렬) | 5 |
| unaryMinus | 값에 단항 마이너스 연산을 수행합니다 (부호 반전). | unaryMinus(3) | x (숫자, 복소수, 배열 또는 행렬) | -3 |
| unaryPlus | 값에 단항 플러스 연산을 수행합니다 (일반적으로 변화 없음). | unaryPlus(-3) | x (숫자, 복소수, 배열 또는 행렬) | -3 |
| xgcd | 두 숫자의 확장 최대공약수를 계산합니다. | xgcd(8, 12) | a, b (숫자 또는 BigNumber) | { "mathjs": "DenseMatrix", "data": [ 4, -1, 1 ], "size": [ 3 ]} |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| bitAnd | 두 값에 대해 비트 AND 연산을 수행합니다 (x & y). | bitAnd(5, 3) | x, y (숫자 또는 BigNumber) | 1 |
| bitNot | 값에 대해 비트 NOT 연산을 수행합니다 (~x). | bitNot(5) | x (숫자 또는 BigNumber) | -6 |
| bitOr | 두 값에 대해 비트 OR 연산을 수행합니다 (x | y). | bitOr(5, 3) | x, y (숫자 또는 BigNumber) | 7 |
| bitXor | 두 값에 대해 비트 XOR 연산을 수행합니다 (x ^ y). | bitXor(5, 3) | x, y (숫자 또는 BigNumber) | 6 |
| leftShift | x의 이진 비트를 y만큼 왼쪽으로 시프트합니다 (x << y). | leftShift(5, 1) | x, y (숫자 또는 BigNumber) | 10 |
| rightArithShift | x의 이진 비트에 대해 산술 오른쪽 시프트를 수행합니다 (x >> y). | rightArithShift(5, 1) | x, y (숫자 또는 BigNumber) | 2 |
| rightLogShift | x의 이진 비트에 대해 논리 오른쪽 시프트를 수행합니다 (x >>> y). | rightLogShift(5, 1) | x, y (숫자 또는 BigNumber) | 2 |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| bellNumbers | n개의 서로 다른 원소를 분할하는 모든 방법의 수를 계산합니다. | bellNumbers(3) | n (숫자) | 5 |
| catalan | 여러 조합 구조의 개수를 세는 데 사용되는 n번째 카탈랑 수를 계산합니다. | catalan(5) | n (숫자) | 42 |
| composition | n을 k개의 부분으로 나누는 조합의 수를 계산합니다. | composition(5, 3) | n, k (숫자) | 6 |
| stirlingS2 | n개의 레이블이 있는 원소를 k개의 비어 있지 않은 하위 집합으로 분할하는 방법의 수를 계산합니다 (제2종 스털링 수). | stirlingS2(5, 3) | n, k (숫자) | 25 |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| arg | 복소수의 편각(위상)을 계산합니다. | arg(complex('2 + 2i')) | x (복소수 또는 숫자) | 0.785398163 |
| conj | 복소수의 켤레 복소수를 계산합니다. | conj(complex('2 + 2i')) | x (복소수 또는 숫자) | { "mathjs": "Complex", "re": 2, "im": -2} |
| im | 복소수의 허수부를 가져옵니다. | im(complex('2 + 3i')) | x (복소수 또는 숫자) | 3 |
| re | 복소수의 실수부를 가져옵니다. | re(complex('2 + 3i')) | x (복소수 또는 숫자) | 2 |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| distance | N차원 공간에서 두 점 사이의 유클리드 거리를 계산합니다. | distance([0,0],[3,4]) | point1 (배열), point2 (배열) | 5 |
| intersect | 두 직선(2D/3D) 또는 직선과 평면(3D)의 교점을 구합니다. | intersect([0,0],[2,2],[0,2],[2,0]) | 직선 1의 시작점과 끝점, 직선 2의 시작점과 끝점, ... | [ 1, 1] |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| and | 논리 AND 연산을 수행합니다. | and(true, false) | x, y (불리언 또는 숫자) | false |
| not | 논리 NOT 연산을 수행합니다. | not(true) | x (불리언 또는 숫자) | false |
| or | 논리 OR 연산을 수행합니다. | or(true, false) | x, y (불리언 또는 숫자) | true |
| xor | 논리 XOR 연산을 수행합니다. | xor(1, 0) | x, y (불리언 또는 숫자) | true |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| column | 행렬에서 지정된 열을 반환합니다. | column([[1,2],[3,4]], 1) | value (행렬 또는 배열), index (숫자) | [ [ 1 ], [ 3 ]] |
| concat | 지정된 차원을 따라 여러 행렬/배열을 연결합니다. | concat([1,2], [3,4], [5,6]) | a, b, c, ... (배열 또는 행렬), dim (숫자, 선택 사항) | [ 1, 2, 3, 4, 5, 6] |
| count | 행렬, 배열 또는 문자열의 요소 개수를 셉니다. | count([1,2,3,'hello']) | x (배열, 행렬 또는 문자열) | 4 |
| cross | 두 3D 벡터의 외적을 계산합니다. | cross([1,2,3], [4,5,6]) | x, y (길이가 3인 배열 또는 행렬) | [ -3, 6, -3] |
| ctranspose | 행렬을 전치하고 켤레 복소수를 취합니다. | ctranspose([[1,2],[3,4]]) | x (행렬 또는 배열) | [ [ 1, 3 ], [ 2, 4 ]] |
| det | 행렬의 행렬식을 계산합니다. | det([[1,2],[3,4]]) | x (행렬 또는 배열) | -2 |
| diag | 대각 행렬을 생성하거나 행렬의 대각 성분을 추출합니다. | diag([1,2,3]) | X (배열 또는 행렬) | [ [ 1, 0, 0 ], [ 0, 2, 0 ], [ 0, 0, 3 ]] |
| diff | 지정된 차원에서 인접한 요소 간의 차이를 계산합니다. | diff([1,4,9,16]) | arr (배열 또는 행렬), dim (숫자, 선택 사항) | [ 3, 5, 7] |
| dot | 두 벡터의 내적을 계산합니다. | dot([1,2,3],[4,5,6]) | x, y (배열 또는 행렬) | 32 |
| eigs | 정사각 행렬의 고윳값과 (선택적으로) 고유 벡터를 계산합니다. | eigs([[1,2],[3,4]]) | x (행렬 또는 배열), codec (수치, 선택 사항) | { "values": [ -0.37228132326901653, 5.372281323269014 ], "eigenvectors": [ { "value": -0.37228132326901653, "vector": [ -4.505883335311908, 3.091669772938812 ] }, { "value": 5.372281323269014, "vector": [ 0.4438641329939267, 0.9703494293791691 ] } ]} |
| expm | 행렬 지수 e^A를 계산합니다. | expm([[1,0],[0,1]]) | x (행렬 또는 배열) | { "mathjs": "DenseMatrix", "data": [ [ 2.7182818284590424, 0 ], [ 0, 2.7182818284590424 ] ], "size": [ 2, 2 ]} |
| fft | N차원 고속 푸리에 변환을 계산합니다. | fft([1,2,3,4]) | arr (배열 또는 행렬) | [ { "mathjs": "Complex", "re": 10, "im": 0 }, { "mathjs": "Complex", "re": -2, "im": 2 }, { "mathjs": "Complex", "re": -2, "im": 0 }, { "mathjs": "Complex", "re": -1.9999999999999998, "im": -2 }] |
| filter | (아직 지원되지 않음) 테스트 함수를 사용하여 배열 또는 1차원 행렬을 필터링합니다. | filter(['23', 'foo', '100', '55', 'bar'], /[0-9]+/) | x (배열 또는 행렬), test (함수) | [ "23", "100", "55"] |
| flatten | 다차원 행렬 또는 배열을 1차원으로 펼칩니다. | flatten([[1,2],[3,4]]) | x (배열 또는 행렬) | [ 1, 2, 3, 4] |
| forEach | (아직 지원되지 않음) 행렬/배열의 각 요소를 순회하며 콜백을 실행합니다. | forEach([1,2,3], val => console.log(val)) | x (배열 또는 행렬), callback (함수) | undefined |
| getMatrixDataType | 행렬 또는 배열의 모든 요소에 대한 데이터 타입(예: 'number' 또는 'Complex')을 확인합니다. | getMatrixDataType([[1,2.2],[3,'hello']]) | x (배열 또는 행렬) | mixed |
| identity | n x n (또는 m x n) 단위 행렬을 생성합니다. | identity(3) | n (숫자) 또는 [m, n] (배열) | { "mathjs": "DenseMatrix", "data": [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ], "size": [ 3, 3 ]} |
| ifft | N차원 역 고속 푸리에 변환을 계산합니다. | ifft([1,2,3,4]) | arr (배열 또는 행렬) | [ { "mathjs": "Complex", "re": 2.5, "im": 0 }, { "mathjs": "Complex", "re": -0.5, "im": -0.5 }, { "mathjs": "Complex", "re": -0.5, "im": 0 }, { "mathjs": "Complex", "re": -0.49999999999999994, "im": 0.5 }] |
| inv | 정사각 행렬의 역행렬을 계산합니다. | inv([[1,2],[3,4]]) | x (행렬 또는 배열) | [ [ -2, 1 ], [ 1.5, -0.5 ]] |
| kron | 두 행렬 또는 벡터의 크로네커 곱을 계산합니다. | kron([[1,1],[0,1]], [[2,0],[0,2]]) | x, y (행렬 또는 배열) | [ [ 2, 0, 2, 0 ], [ 0, 2, 0, 2 ], [ 0, 0, 2, 0 ], [ 0, 0, 0, 2 ]] |
| map | 각 요소에 콜백을 적용하여 새로운 배열/행렬을 생성합니다. | map([1,2,3], val => val * val) | x (배열 또는 행렬), callback (함수) | [ 1, 4, 9] |
| matrixFromColumns | 여러 벡터를 개별 열로 결합하여 밀집 행렬을 만듭니다. | matrixFromColumns([1,4],[2,5],[3,6]) | ...arr (배열 또는 행렬) | [ [ 1, 2, 3 ], [ 4, 5, 6 ]] |
| matrixFromFunction | (아직 지원되지 않음) 행렬의 각 인덱스에 대해 함수를 평가하여 행렬을 생성합니다. | matrixFromFunction([5], i => math.random()) | size (배열), fn (함수) | a random vector |
| matrixFromRows | 여러 벡터를 개별 행으로 결합하여 밀집 행렬을 만듭니다. | matrixFromRows([1,2,3],[4,5,6]) | ...arr (배열 또는 행렬) | [ [ 1, 2, 3 ], [ 4, 5, 6 ]] |
| ones | 지정된 차원에 대해 모든 요소가 1인 행렬을 생성합니다. | ones(2, 3) | m, n, p... (숫자) | { "mathjs": "DenseMatrix", "data": [ [ 1, 1, 1 ], [ 1, 1, 1 ] ], "size": [ 2, 3 ]} |
| partitionSelect | 파티션 선택법을 기반으로 배열 또는 1차원 행렬에서 k번째로 작은 요소를 반환합니다. | partitionSelect([3,1,4,2], 2) | x (배열 또는 행렬), k (숫자) | 3 |
| pinv | 행렬의 무어-펜로즈 유사역행렬(Moore–Penrose pseudoinverse)을 계산합니다. | pinv([[1,2],[2,4]]) | x (행렬 또는 배열) | [ [ 0.04000000000000001, 0.08000000000000002 ], [ 0.08000000000000002, 0.16000000000000003 ]] |
| range | start부터 end까지 숫자 배열을 생성합니다 (step 선택 가능). | range(1, 5, 2) | start (숫자), end (숫자), step (숫자, 선택 사항) | { "mathjs": "DenseMatrix", "data": [ 1, 3 ], "size": [ 2 ]} |
| reshape | 배열/행렬을 지정된 차원으로 재구성합니다. | reshape([1,2,3,4,5,6], [2,3]) | x (배열 또는 행렬), sizes (배열) | [ [ 1, 2, 3 ], [ 4, 5, 6 ]] |
| resize | 행렬을 새로운 차원으로 조정하며, 기본값으로 빈 요소를 채울 수 있습니다. | resize([1,2,3], [5], 0) | x (배열 또는 행렬), size (배열), defaultValue (선택 사항) | [ 1, 2, 3, 0, 0] |
| rotate | 1x2 벡터를 반시계 방향으로 회전하거나, 1x3 벡터를 주어진 축을 중심으로 회전합니다. | rotate([1, 0], Math.PI / 2) | w (배열 또는 행렬), theta (숫자[, 축]) | [ 6.123233995736766e-17, 1] |
| rotationMatrix | 주어진 라디안 각도에 대한 2x2 회전 행렬을 생성합니다. | rotationMatrix(Math.PI / 2) | theta (숫자) | { "mathjs": "DenseMatrix", "data": [ [ 6.123233995736766e-17, -1 ], [ 1, 6.123233995736766e-17 ] ], "size": [ 2, 2 ]} |
| row | 행렬에서 지정된 행을 반환합니다. | row([[1,2],[3,4]], 1) | value (행렬 또는 배열), index (숫자) | [ [ 3, 4 ]] |
| size | 행렬, 배열 또는 스칼라의 크기(차원)를 계산합니다. | size([[1,2,3],[4,5,6]]) | x (배열, 행렬 또는 숫자) | [ 2, 3] |
| sort | 행렬 또는 배열을 오름차순으로 정렬합니다. | sort([3,1,2]) | x (배열 또는 행렬) | [ 1, 2, 3] |
| sqrtm | 정사각 행렬의 주 제곱근을 계산합니다. | sqrtm([[4,0],[0,4]]) | A (행렬 또는 배열) | [ [ 2.000000000000002, 0 ], [ 0, 2.000000000000002 ]] |
| squeeze | 행렬 내부 및 외부의 단일 차원(singleton dimension)을 제거합니다. | squeeze([[[1],[2],[3]]]) | x (행렬 또는 배열) | [ 1, 2, 3] |
| subset | 행렬 또는 문자열의 부분 집합을 가져오거나 대체합니다. | subset([[1, 2], [3, 4]], index(1, 1),2) | x (행렬, 배열 또는 문자열), index (인덱스), replacement (선택 사항) | [ [ 2, 2 ], [ 3, 4 ]] |
| trace | 정사각 행렬의 대각합(trace, 대각 요소의 합)을 계산합니다. | trace([[1,2],[3,4]]) | x (행렬 또는 배열) | 5 |
| transpose | 행렬을 전치합니다. | transpose([[1,2],[3,4]]) | x (행렬 또는 배열) | [ [ 1, 3 ], [ 2, 4 ]] |
| zeros | 지정된 차원에 대해 모든 요소가 0인 행렬을 생성합니다. | zeros(2, 3) | m, n, p... (숫자) | { "mathjs": "DenseMatrix", "data": [ [ 0, 0, 0 ], [ 0, 0, 0 ] ], "size": [ 2, 3 ]} |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| combinations | n개의 원소에서 k개를 순서 없이 선택하는 조합의 수를 계산합니다. | combinations(5, 2) | n (수치), k (수치) | 10 |
| combinationsWithRep | 중복을 허용하는 조합의 수를 계산합니다. | combinationsWithRep(5, 2) | n (수치), k (수치) | 15 |
| factorial | 정수 n의 팩토리얼을 계산합니다. | factorial(5) | n (정수) | 120 |
| gamma | 근사 알고리즘을 사용하여 감마 함수 값을 계산합니다. | gamma(5) | n (수치) | 24 |
| kldivergence | 두 분포 사이의 KL 발산(Kullback–Leibler divergence)을 계산합니다. | kldivergence([0.1, 0.9], [0.2, 0.8]) | x (배열 또는 행렬), y (배열 또는 행렬) | 0.036690014034750584 |
| lgamma | 감마 함수의 로그값을 계산합니다 (확장 근사). | lgamma(5) | n (수치) | 3.178053830347945 |
| multinomial | 일련의 개수 집합을 기반으로 다항 계수를 계산합니다. | multinomial([1, 2, 3]) | a (배열) | 60 |
| permutations | n개의 원소에서 k개를 선택하는 순열의 수를 계산합니다. | permutations(5, 2) | n (수치), k (수치, 선택 사항) | 20 |
| pickRandom | 1차원 배열에서 하나 이상의 값을 무작위로 선택합니다. | pickRandom([10, 20, 30]) | 배열 | 20 |
| random | 균등 분포를 따르는 난수를 반환합니다. | random(1, 10) | 최솟값 (선택 사항), 최댓값 (선택 사항) | 3.6099423753668143 |
| randomInt | 균등 분포를 따르는 임의의 정수를 반환합니다. | randomInt(1, 10) | 최솟값 (선택 사항), 최댓값 (선택 사항) | 5 |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| compare | 두 값을 비교하여 -1, 0, 또는 1을 반환합니다. | compare(2, 3) | x, y (모든 타입) | -1 |
| compareNatural | 임의의 타입의 값을 자연스럽고 반복 가능한 방식으로 비교합니다. | compareNatural('2', '10') | x, y (모든 타입) | -1 |
| compareText | 두 문자열을 사전순으로 비교합니다. | compareText('apple', 'banana') | x (문자열), y (문자열) | -1 |
| deepEqual | 두 행렬/배열의 요소를 개별적으로 비교하여 동일한지 확인합니다. | deepEqual([[1, 2]], [[1, 2]]) | x (배열/행렬), y (배열/행렬) | true |
| equal | 두 값이 같은지 확인합니다. | equal(2, 2) | x, y (모든 타입) | true |
| equalText | 두 문자열이 동일한지 확인합니다. | equalText('hello', 'hello') | x (문자열), y (문자열) | true |
| larger | x가 y보다 큰지 확인합니다. | larger(3, 2) | x, y (숫자 또는 BigNumber) | true |
| largerEq | x가 y보다 크거나 같은지 확인합니다. | largerEq(3, 3) | x, y (숫자 또는 BigNumber) | true |
| smaller | x가 y보다 작은지 확인합니다. | smaller(2, 3) | x, y (숫자 또는 BigNumber) | true |
| smallerEq | x가 y보다 작거나 같은지 확인합니다. | smallerEq(2, 2) | x, y (숫자 또는 BigNumber) | true |
| unequal | 두 값이 같지 않은지 확인합니다. | unequal(2, 3) | x, y (모든 타입) | true |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| setCartesian | 두 (다중) 집합의 데카르트 곱을 생성합니다. | setCartesian([1, 2], [3, 4]) | 첫 번째 집합 (배열), 두 번째 집합 (배열) | [ [ 1, 3 ], [ 1, 4 ], [ 2, 3 ], [ 2, 4 ]] |
| setDifference | 두 (다중) 집합의 차집합을 생성합니다 (set1에는 있지만 set2에는 없는 원소). | setDifference([1, 2, 3], [2]) | 첫 번째 집합 (배열), 두 번째 집합 (배열) | [ 1, 3] |
| setDistinct | (다중) 집합에서 고유한 원소들을 가져옵니다. | setDistinct([1, 2, 2, 3]) | 집합 (배열) | [ 1, 2, 3] |
| setIntersect | 두 (다중) 집합의 교집합을 생성합니다. | setIntersect([1, 2], [2, 3]) | 첫 번째 집합 (배열), 두 번째 집합 (배열) | [ 2] |
| setIsSubset | set1이 set2의 부분 집합인지 확인합니다. | setIsSubset([1, 2], [1, 2, 3]) | 첫 번째 집합 (배열), 두 번째 집합 (배열) | true |
| setMultiplicity | 다중 집합에서 특정 원소가 나타나는 횟수를 셉니다. | setMultiplicity(2, [1, 2, 2, 3]) | 원소 (모든 타입), 집합 (배열) | 2 |
| setPowerset | (다중) 집합의 모든 부분 집합인 멱집합을 생성합니다. | setPowerset([1, 2]) | 집합 (배열) | [ [], [ 1 ], [ 2 ], [ 1, 2 ]] |
| setSize | (다중) 집합의 모든 원소 개수를 셉니다. | setSize([1, 2, 3]) | 집합 (배열) | 3 |
| setSymDifference | 두 (다중) 집합의 대칭 차집합을 생성합니다 (두 집합 중 하나에만 있는 원소). | setSymDifference([1, 2], [2, 3]) | 첫 번째 집합 (배열), 두 번째 집합 (배열) | [ 1, 3] |
| setUnion | 두 (다중) 집합의 합집합을 생성합니다. | setUnion([1, 2], [2, 3]) | 첫 번째 집합 (배열), 두 번째 집합 (배열) | [ 1, 3, 2] |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| erf | 유리 체비쇼프 근사를 사용하여 오차 함수(error function)를 계산합니다. | erf(0.5) | 입력값 x (숫자) | 0.5204998778130465 |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| cumsum | 리스트 또는 행렬의 누적 합계를 계산합니다. | cumsum([1, 2, 3, 4]) | [ 1, 3, 6, 10] | |
| mad | 데이터의 중앙값 절대 편차(median absolute deviation)를 계산합니다. | mad([1, 2, 3, 4]) | 1 | |
| max | 리스트 또는 행렬의 최댓값을 반환합니다. | max([1, 2, 3]) | 3 | |
| mean | 평균값을 계산합니다. | mean([2, 4, 6]) | 4 | |
| median | 중앙값을 계산합니다. | median([1, 2, 3, 4, 5]) | 3 | |
| min | 리스트 또는 행렬의 최솟값을 반환합니다. | min([1, 2, 3]) | 1 | |
| mode | 최빈값(가장 자주 나타나는 값)을 계산합니다. | mode([1, 2, 2, 3]) | [ 2] | |
| prod | 리스트 또는 행렬의 모든 숫자의 곱을 계산합니다. | prod([1, 2, 3, 4]) | 24 | |
| quantileSeq | 리스트 또는 행렬의 prob 위치에서의 분위수를 계산합니다. | quantileSeq([1, 2, 3, 4], 0.25) | 1.75 | |
| std | 데이터의 표준 편차를 계산합니다. | std([1, 2, 3, 4]) | 1.2909944487358056 | |
| sum | 리스트 또는 행렬의 모든 숫자의 합을 계산합니다. | sum([1, 2, 3]) | 6 | |
| variance | 데이터의 분산을 계산합니다. | variance([1, 2, 3, 4]) | 1.6666666666666667 |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| bin | 숫자를 이진수 형식으로 변환합니다. | bin(13) | 13 | |
| format | 임의의 타입의 값을 지정된 정밀도의 문자열로 변환합니다. | format(123.456, 2) | 120 | |
| hex | 숫자를 16진수 형식으로 변환합니다. | hex(255) | 255 | |
| oct | 숫자를 8진수 형식으로 변환합니다. | oct(64) | 64 | |
| 문자열 템플릿에 여러 수치를 삽입합니다. | print('x = $x, y = $y', {x: 3, y: 4}, 2) | x = 3, y = 4 |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| acos | 아크코사인 값을 계산합니다. | acos(0.5) | 1.0471975511965979 | |
| acosh | 역쌍곡코사인 값을 계산합니다. | acosh(2) | 1.3169578969248166 | |
| acot | 아크코탄젠트 값을 계산합니다. | acot(1) | 0.7853981633974483 | |
| acoth | 역쌍곡코탄젠트 값을 계산합니다. | acoth(2) | 0.5493061443340548 | |
| acsc | 아크코시컨트 값을 계산합니다. | acsc(2) | 0.5235987755982989 | |
| acsch | 역쌍곡코시컨트 값을 계산합니다. | acsch(2) | 0.48121182505960347 | |
| asec | 역시컨트 값을 계산합니다. | asec(2) | 1.0471975511965979 | |
| asech | 역쌍곡시컨트 값을 계산합니다. | asech(0.5) | 1.3169578969248166 | |
| asin | 아크사인 값을 계산합니다. | asin(0.5) | 0.5235987755982989 | |
| asinh | 역쌍곡사인 값을 계산합니다. | asinh(1.5) | 1.1947632172871094 | |
| atan | 아크탄젠트 값을 계산합니다. | atan(1) | 0.7853981633974483 | |
| atan2 | 두 개의 인자를 사용하여 아크탄젠트 값을 계산합니다. | atan2(1, 2) | 0.4636476090008061 | |
| atanh | 역쌍곡탄젠트 값을 계산합니다. | atanh(0.5) | 0.5493061443340548 | |
| cos | x의 코사인 값을 계산합니다. | cos(0.5) | 0.8775825618903728 | |
| cosh | x의 쌍곡코사인 값을 계산합니다. | cosh(0.5) | 1.1276259652063807 | |
| cot | x의 코탄젠트 값을 계산합니다. | cot(0.5) | 1.830487721712452 | |
| coth | x의 쌍곡코탄젠트 값을 계산합니다. | coth(0.5) | 2.163953413738653 | |
| csc | x의 코시컨트 값을 계산합니다. | csc(0.5) | 2.085829642933488 | |
| csch | x의 쌍곡코시컨트 값을 계산합니다. | csch(0.5) | 1.9190347513349437 | |
| sec | x의 시컨트 값을 계산합니다. | sec(0.5) | 1.139493927324549 | |
| sech | x의 쌍곡시컨트 값을 계산합니다. | sech(0.5) | 0.886818883970074 | |
| sin | x의 사인 값을 계산합니다. | sin(0.5) | 0.479425538604203 | |
| sinh | x의 쌍곡사인 값을 계산합니다. | sinh(0.5) | 0.5210953054937474 | |
| tan | x의 탄젠트 값을 계산합니다. | tan(0.5) | 0.5463024898437905 | |
| tanh | x의 쌍곡탄젠트 값을 계산합니다. | tanh(0.5) | 0.46211715726000974 |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| to | 수치 값을 지정된 단위로 변환합니다. | to(unit('2 inch'), 'cm') | { "mathjs": "Unit", "value": 5.08, "unit": "cm", "fixcodefix": true} |
| 함수 | 정의 | 호출 예시 | 매개변수 | 예상 결과 |
|---|---|---|---|---|
| clone | 입력값에 대해 깊은 복사(deep clone)를 수행합니다. | clone([1, 2, 3]) | [ 1, 2, 3] | |
| hasNumericValue | 입력에 수치 값이 포함되어 있는지 확인합니다. | hasNumericValue('123') | true | |
| isInteger | 입력이 정수인지 확인합니다. | isInteger(3.0) | true | |
| isNaN | 입력이 NaN인지 확인합니다. | isNaN(NaN) | true | |
| isNegative | 입력이 음수인지 확인합니다. | isNegative(-5) | true | |
| isNumeric | 입력이 수치인지 확인합니다. | isNumeric('123') | false | |
| isPositive | 입력이 양수인지 확인합니다. | isPositive(2) | true | |
| isPrime | 입력이 소수(prime number)인지 확인합니다. | isPrime(7) | true | |
| isZero | 입력이 0인지 확인합니다. | isZero(0) | true | |
| numeric | 입력값을 특정 수치 타입(number, BigNumber 등)으로 변환합니다. | numeric('123') | 123 | |
| typeOf | 입력값의 타입 이름을 반환합니다. | typeOf([1, 2, 3]) | Array |