我正在使用matlab,想检查列向量是否与另一个使用3dp相等,为此,我试图创建一个满量程为0.001的数组并检查它是否更大大于或等于。有没有更简单的方法比for循环来创建这个数组还是没有?创建一个单一值的数组
3
A
回答
0
您可以考虑在“查找”命令,如:
a = [ 0.005, -0.003 ];
x = find(a > 0.001);
FWIW,我发现在MATLAB比较数字是一个绝对的噩梦,但我也只是新手的话。重点是,当你进行比较时,你可能会遇到浮点比较问题,因此在尝试任何事情时请记住这一点(如果我错了,或者有一个漂亮的解决方法,请纠正我)
1
例如:
a = rand(1000,1);
b = rand(1000,1);
idx = (abs(a-b) < 0.001);
[a(idx) b(idx)]
» ans =
0.2377 0.23804
0.0563 0.056611
0.01122 0.011637
0.676 0.6765
0.61372 0.61274
0.87062 0.87125
4
所以,让我知道这是否正确。
你有2载体,a
和b
每个拥有N
元素。你要检查是否每个i<=N
,abs(a(i)-b(i)) <= 0.001
。
如果这是正确的,你想:
vector_match = all(abs(a-b) <= 0.001);
vector_match
是一个布尔值。
10
有没有比for循环更简单的方法来创建这个数组?
是,使用
ones(size, 1) * myValue
例如
>> ones(5,1)*123
ans =
123
123
123
123
123
相关问题
- 1. 创建一个简单的数组
- 2. 创建一个数组,并设置我试图创建一个数组值
- 3. 创建一个主键值数组
- 4. 如何从单个GeoJSON属性创建一个数组值?
- 5. 创建一个对象,其中的值是一个数组
- 6. 在每一行中创建一个具有单个交错值的数组?
- 7. 试图从一个数组的两个值创建一个数组
- 8. 创建一个数组
- 9. 创建一个UIViews数组
- 10. 创建一个数组blockingqueue
- 11. 创建一个CLLocationCoordinates数组
- 12. 比较两个数组值,并创建一个PHP数组
- 13. 如何从JavaScript数组中创建一个简单的数组?
- 14. 从字典数组创建一个值的数组
- 15. 从数组的值创建一个数组
- 16. 如何创建一个包含其他值的数组数组?
- 17. For循环创建一个比预期值小一个数组的数组
- 18. Javascript:创建一个数组,其索引是另一个数组的值
- 19. 使用另一个数组的索引值创建一个数组
- 20. 创建一个数组,其值位于数组中的一个键中
- 21. 从一个数组(对象)中创建一个数组(对象)的阵列(值)
- 22. 如何在一个数组中创建另一个数组(VBA)中的值?
- 23. Ruby:创建一个哈希数组,其中每个值都是一个数组
- 24. 创建一个数组对象数组?
- 25. 创建一个从未知数值数组一个PHP嵌套数组
- 26. Java:从另一个数组的属性创建一个数组
- 27. 如何创建并填充一个新的关联数组,每个数组都创建一个值?
- 28. 如何创建一个允许数组像单值一样操作的方法?
- 29. 一格创建一个二维数组
- 30. 使用关联数组键和数值数组值创建一个数组PHP
为了解决比较问题,你可以使用'eps'。通常,浮点比较会影响所有语言,而不仅仅是MATLAB。您可以阅读**数值方法中的一些材料**,因为在大量操作后,数字错误可能会累积。例如,在某些情况下,它是'sqrt(eps)'。 – rwong 2010-08-27 03:24:07
@wrong:当然,我知道'eps',我知道浮点比较,但是'eps'并不总是有帮助。不过谢谢。 – 2010-08-27 03:26:58