我相信有一种方法可以做到这一点,但我不知道是什么。
假设我有一个向量。
我想使用每个元素的格式字符串将其转换为单元数组:
假设我有一个向量。
v = [1.02 2.03 3.04];
我想使用每个元素的格式字符串将其转换为单元数组:
' %.3f'
(在%.3f之前加入了3个空格)
我该怎么做? 我尝试了以下方法,但出现错误:
>> f1 = @(x) sprintf(' %.3f',x);
>> cellfun(f1, num2cell(v))
??? Error using ==> cellfun
Non-scalar in Uniform output, at index 1, output 1.
Set 'UniformOutput' to false.
你可能想使用cellfun(..., 'UniformOutput', false)
。 - Jason Ssprintf
在数组中也可以使用:即你可以使用sprintf(' %.3f',v)
来打印所有元素。也许,你正在为类似这样的东西创建单元格? - petrichor