sprand
Matriz esparsa com elementos aleatórios uniformemente distribuídos entre 0 e 1.
Categoria: Mathematics > Sparse Matrices
Sintaxe
R = sprand(m, n, density)
Retorna uma matriz esparsa m-por-n com cerca de density*m*n não nulos.
R = sprand(S)
Retorna uma matriz aleatória com o mesmo padrão de esparsidade de S.
Descrição
As posições dos não nulos são escolhidas ao acaso, então o número real pode ser um pouco diferente da densidade pedida quando dois sorteios caem na mesma posição. Use rng antes da chamada para obter matrizes reprodutíveis.
É usada para criar matrizes de teste de algoritmos esparsos. Para valores com distribuição normal use sprandn.
Argumentos de entrada
m, n- Tamanho da matriz.
density- Fração de elementos não nulos, de 0 a 1.
S- Matriz esparsa cujo padrão é copiado.
Argumentos de saída
R- Matriz esparsa cujos não nulos são sorteados da distribuição uniforme em (0, 1).
Exemplo
Uma matriz esparsa aleatória
rng(1);
R = sprand(6, 6, 0.3);
size(R)
issparse(R)
all(nonzeros(R) > 0 & nonzeros(R) < 1)
ans = 1×2
6 6
ans = logical
1
ans = logical
1
Observações
As matrizes produzidas para uma dada semente diferem das do MATLAB. O MatLivre armazena matrizes esparsas de forma densa, então elas não economizam memória, e tamanhos acima de 200 milhões de elementos são rejeitados. Resultados e exibição coincidem com os do MATLAB em tamanhos comuns.