full
희소 행렬을 비희소 저장 형식으로 변환
설명
예제
희소 행렬을 비희소 저장 형식으로 변환하기
행렬의 저장 형식을 변경하고 저장 요구 사항과 비교합니다.
희소 형식의 확률 행렬을 만듭니다. MATLAB®은 0을 모두 생략하고 0이 아닌 요소의 위치와 값을 표시하여 희소 행렬을 표시합니다.
rng default %for reproducibility S = sprand(8,8,0.3)
S = (2,1) 0.0344 (7,1) 0.4456 (8,1) 0.7547 (2,2) 0.4387 (4,3) 0.7655 (7,3) 0.6463 (8,4) 0.2760 (1,6) 0.9502 (5,6) 0.1869 (8,6) 0.6797 (3,7) 0.3816 (4,7) 0.7952 (8,7) 0.6551 (6,8) 0.4898 (7,8) 0.7094
행렬을 비희소 저장 형식으로 변환합니다. 새 저장 형식이 반영된 행렬이 표시됩니다.
A = full(S)
A = 8×8
0 0 0 0 0 0.9502 0 0
0.0344 0.4387 0 0 0 0 0 0
0 0 0 0 0 0 0.3816 0
0 0 0.7655 0 0 0 0.7952 0
0 0 0 0 0 0.1869 0 0
0 0 0 0 0 0 0 0.4898
0.4456 0 0.6463 0 0 0 0 0.7094
0.7547 0 0 0.2760 0 0.6797 0.6551 0
두 형식의 저장공간 요구 사항을 비교합니다.
A
는 64개의 double형(각각 8바이트), 즉 바이트를 위한 저장공간을 사용합니다.S
는 0이 아닌 요소 15개와 그 위치를 설명하는 24개의 정수, 총 바이트를 위한 저장공간을 사용합니다.
whos
Name Size Bytes Class Attributes A 8x8 512 double S 8x8 312 double sparse
입력 인수
S
— 변환할 희소 행렬
행렬
변환할 희소 행렬로, 행렬로 지정됩니다. S
가 이미 비희소 행렬인 경우 A
는 S
와 같습니다.
팁
X
가 0이 아닌nz
개 요소를 포함하는m
×n
행렬인 경우full(X)
는m*n
개 요소를 저장할 공간을 필요로 합니다. 반면에,sparse(X)
는nz
개 요소와(nz+n+1)
개 정수를 저장할 공간을 필요로 합니다.행렬의 밀도(
nnz(X)/numel(X)
)에 따라 행렬을 저장할 때 희소와 비희소 중 어느 쪽이 더 효율적인지 결정됩니다. 정확한 교차점은 행렬 클래스와 플랫폼에 따라 달라집니다. 예를 들어, 32비트 MATLAB®에서 밀도가 2/3 미만인 double형 희소 행렬의 경우 비희소 저장 형식의 동일한 행렬보다 적은 공간이 필요합니다. 그러나 64비트 MATLAB에서 0이 아닌 요소가 절반 미만인 double형 행렬은 희소 행렬로 저장하는 것이 보다 효율적입니다.
확장 기능
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
GPU 배열
Parallel Computing Toolbox™를 사용해 GPU(그래픽스 처리 장치)에서 실행하여 코드 실행 속도를 높일 수 있습니다.
이 함수는 GPU 배열을 완전히 지원합니다. 자세한 내용은 GPU에서 MATLAB 함수 실행하기 (Parallel Computing Toolbox) 항목을 참조하십시오.
분산 배열
Parallel Computing Toolbox™를 사용하여 대규모 배열을 클러스터의 결합된 메모리에 걸쳐 분할할 수 있습니다.
이 함수는 분산 배열을 완전히 지원합니다. 자세한 내용은 분산 배열을 사용하여 MATLAB 함수 실행 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)