matlab 中如何在一个向量中随机抽取一个元素
来自: 更新日期:早些时候
在matlab软件中如何对于一个向量中随机抽取其中的一个元素~
其中:
rand 生成一个[0, 1] 之间的随机实数。
length(a) - 1 是a的元素个数减去1。
rand * (length(a) - 1) + 1把这个随机数变为 [1, a的元素个数] 之间的随机实数。
uint16(...)把这个实数转化为无符号16位整数,当然你用int16或者uint32等等也行,总之必须满足数组下标是整数类型的要求。
最后a(...)就是你题目要求得到的内容。
a(unidrnd(5)) %unidrnd(N),随机产生一个最大值为N的正整数
matlab貌似没有现成的函数
matlab 中如何在一个向量中随机抽取一个元素视频
相关评论:
b是向量长度
a= ceil(b*rand(1,1));
C(a)即为随机抽取的元素
a(uint16(rand
*
(length(a)
-
1)
+
1))
其中:
rand
生成一个[0,
1]
之间的随机实数。
length(a)
-
1
是a的元素个数减去1。
rand
*
(length(a)
-
1)
+
1把这个随机数变为
[1,
a的元素个数]
之间的随机实数。
uint16(...)把这个实数转化为无符号16位整数,当然你用int16或者uint32等等也行,总之必须满足数组下标是整数类型的要求。
最后a(...)就是你题目要求得到的内容。
其中:
rand 生成一个[0, 1] 之间的随机实数。
length(a) - 1 是a的元素个数减去1。
rand * (length(a) - 1) + 1把这个随机数变为 [1, a的元素个数] 之间的随机实数。
uint16(...)把这个实数转化为无符号16位整数,当然你用int16或者uint32等等也行,总之必须满足数组下标是整数类型的要求。
最后a(...)就是你题目要求得到的内容。
a(unidrnd(5)) %unidrnd(N),随机产生一个最大值为N的正整数
matlab貌似没有现成的函数
matlab 中如何在一个向量中随机抽取一个元素视频
相关评论: