我有一系列的值,我试图将它们全部舍入为整数,但我不希望它们中的任何一个变为零。
有些值看起来像这样:
0.00001
-0.03
-0.000001
0.789
1
我希望四舍五入后的结果看起来像这样:
1
-1
-1
1
1
我尝试了round(),ceil(),floor()等,但我不知道在这种情况下该怎么做。有什么建议吗?
答案 0 :(得分:2)
虽然fix
允许您将所有数字舍入为零,但没有内置功能可以执行相反的操作。您可以对数组的绝对值使用ceil
将每个条目四舍五入到下一个最高整数,然后乘以数据的sign
以将正确的符号应用于结果。
result = sign(data) .* ceil(abs(data))
% 1
% -1
% -1
% 1
% 1