Randi command for a matrix
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
i am using a random generator for a matrix.
However the randi command is not working for matrix C with following error (Error using randi First input must be a positive scalar integer value IMAX, or two integer values [IMIN IMAX] with IMIN less than or equal to IMAX.)
clear all
clc
A = (textread('data_mat_ta01_11x5.txt'))'
size(A)
B=A/9
C=floor(B)
D=randi(C)
0 Kommentare
Antworten (1)
KALYAN ACHARJYA
am 19 Sep. 2019
Bearbeitet: KALYAN ACHARJYA
am 19 Sep. 2019
Wrong here,you read a txt file as A and Divide it by 9>>B, Is there any sense??
% Read a text file, variable name A
A = (textread('data_mat_ta01_11x5.txt'))'
size(A) % No use, you have not assigned to any variable
B=A/9
and
floor rounds each element of B to the nearest integer less than.
Regarding randi matrix generation: See the following example
%...........[3,4] reperesent the size of the required matrix
>> randi(10,[3,4]);
%........^Max element value in the matrix
ans =
9 10 3 10
10 7 6 2
2 1 10 10
Rquested you to debug the code, line by line and modify it accordingly. If you are just a beginner on Matlab, I suggested you to go through this
Good Wishes!
2 Kommentare
Walter Roberson
am 20 Sep. 2019
You cannot pass an 11 x 5 array as the first parameter to randi().
D = arrayfun( @(c) randi([1 c]), C);
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!