我想把matlab矩阵里随机抽取20%的数字的值变成0,请问如何操作?RT比如说呢 一个5X5的矩阵a=[1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;],有 25个坑,我想随机让其中5个坑变成0,请问怎么操作?除了20%,以

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/04 00:25:19

我想把matlab矩阵里随机抽取20%的数字的值变成0,请问如何操作?RT比如说呢 一个5X5的矩阵a=[1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;],有 25个坑,我想随机让其中5个坑变成0,请问怎么操作?除了20%,以
我想把matlab矩阵里随机抽取20%的数字的值变成0,请问如何操作?
RT
比如说呢 一个5X5的矩阵
a=[1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;]
,有 25个坑,
我想随机让其中5个坑变成0,请问怎么操作?除了20%,以后还要40%,50%,60%等,所以这个变0的百分比要有一个变量空着着,不求算法,只求实现,

我想把matlab矩阵里随机抽取20%的数字的值变成0,请问如何操作?RT比如说呢 一个5X5的矩阵a=[1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;],有 25个坑,我想随机让其中5个坑变成0,请问怎么操作?除了20%,以
>> A=floor(rand(5,7)*100);%随机生成5行7列且元素为(0,100)之间的整数矩阵
>> A
A =
49 75 95 84 34 35 28
95 25 54 25 19 83 75
34 50 13 81 25 58 75
58 69 14 24 61 54 38
22 89 25 92 47 91 56
>> [r,c]=size(A)
r =
5
c =
7
>> totalNum=r*c;%由矩阵的行列数得出矩阵元素总个数
>> randomIndex=1+floor(rand(1,floor(totalNum*0.2))*totalNum)%生成值在1到矩阵总元素个数totalNum之间的totalNum*20%个随机数,作为矩阵中将要置零的元素的下标索引(此时把矩阵看作是一个一维数组)
randomIndex =
3 2 19 28 33 5 20
>> A(randomIndex)=0;%跟生成的随机元素索引,来把相应的元素置零
>> A
A =
49 75 95 84 34 35 28
0 25 54 25 19 83 75
0 50 13 81 25 0 0
58 69 14 0 61 54 38
0 89 25 0 47 91 56
可见将35*20%个元素随机的置零了
将下面的语句复制到Command Window,或建立.m文件运行即可(每次运行结果都不一样):
A=floor(rand(5,7)*100)
[r,c]=size(A)
totalNum=r*c;
randomIndex=1+floor(rand(1,floor(totalNum*0.2))*totalNum)
A(randomIndex)=0

MATLAB 随机抽取数据问题我现在有200*4的一个矩阵数据组,现在我想随机抽取150*4的数据,怎么写代码 给定一些数据随机抽取一部分存入一个矩阵,把剩余的存入另一个矩阵用matlab怎么实 我想把matlab矩阵里随机抽取20%的数字的值变成0,请问如何操作?RT比如说呢 一个5X5的矩阵a=[1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;1 1 1 1 1;],有 25个坑,我想随机让其中5个坑变成0,请问怎么操作?除了20%,以 matlab产生随机矩阵matlab怎么产生10*20阶从3到10的随机矩阵 MATLAB中从已知矩阵中随机抽取5个元素如何实现. 怎么在matlab里生成一个8阶均匀分布的随机矩阵 试在MATLAB中生成区间[20,30]内均匀分布的4阶随机矩阵. matlab如何生成每行之和等于1的随机矩阵? matlab怎么随机生成1,0,-1的矩阵 matlab如何生成5乘5的随机对称矩阵 如何随机提取matlab矩阵中一个元素的位置关于matlab矩阵问题 怎样随机给matlab中矩阵的一个元素赋值matlab中矩阵问题 matlab 中想在一定分布的数据中随机采样N个数据,比如我想构造服从某一分布(如高斯分布,不要均匀分布)的数据,这个怎么搞,然后再在这个数据里随机抽取n个不重复的数,怎么编程呢 请问:Matlab中怎么从一个现有的矩阵中随机抽取一个数?如从[3 8 6 4 9]中随机抽取一个数.但要注意!这个现有矩阵中的数据没有任何规律,因为它是在程序运行的过程中根据程序需要解决的问题 matlab中矩阵合并在matlab中有一组三维矩阵,但是这一组三维矩阵的大小可能不一样,我想把这一组三维矩阵保存到一个四维矩阵里,然后再调用,请问该怎么合并这一组矩阵.程序结构如下:for i=1: matlab里的矩阵放入问题.在matlab里面 例如 首先创建一个10*10的零矩阵,然后再随机产生一个4*4的矩阵,要将这个4*4矩阵里的每一个元素都随机的放到那个10*10的零矩阵中,且他们的位置不能重复. matlab.1个是只有0和1的矩阵 另一个是随机矩阵怎么把随机矩阵和第一个矩阵合成一个这样的矩阵 新矩阵在第一个矩阵中是1的的位置显示第二个矩阵的数据 是0的位置就不显示数据 matlab 如何从一组数据中随机抽取一个a=[2,3,5,7,8,10];现需要从a中随机抽取一个数,重复100次,每次随机抽取的数作为一个新的数列