How to skip an empty value
显示 更早的评论

Hello I work with this data in my program, but if there are empty spots, the program stops itself. I would like to now, how can I say to matlab to ignore these empty values or fill it with the previous value. Thank you so much
采纳的回答
You can use isempty(rp) to check, and then ignore as needed.
9 个评论
But How should I do it. What is a funcion for ignoring it
"But How should I do it."
You look at your "program", which presumably you wrote, and find the place where you want to check for the empty array, then include the function ISMEMPTY as Fangjun Jiang suggested. Of course you will need to decide how you want to ignore the empty array (e.g. skip an iteration, return from a function, store the location in a boolean mask, etc.)
We cannot tell you what you how or where because you have not told us anything nor shown us any relevant code.
The code is so large, so I thing it takes a lot you to find the right information. However, I just find the empty value with the function isempty, but now, I dont now, how to skip it.
"However, I just find the empty value with the function isempty, but now, I dont now, how to skip it."
That depends on exactly what your code does with that array. Which we don't know and you won't tell us. So you will need to think about the logic yourself (after all, that is a significant part of writing code): how does your code generate/process that array: does it involve loops and indexing or recursion or simply printing the value to the comment window directly from an array?
@Eliska Paulikova: you still need to decide what you want to do when that array is empty. Perhaps one of:
- throw an error,
- use a default value,
- skip to the next iteration,
- use an alternative calculation,
- shorten the output array to not include that iteration.
- etc.
This is not a question about code, it is about the logic of your algorithm, and what makes sense for your data. Please let us know what you want to do when you get an empty array.
As I said, I would like ro skip to the next iteration
"I would like ro skip to the next iteration"
Thank you so much
In the code, you have this line "rp=radiiBright %v pixelech". It does not have the ";" at the end of line so every time "rp" got calculated, it displays at the Command Window as you showed.
You can add this right after to "skip".
if isempty(rp)
continue
end
The "continue" command will jump the execution to the end of the current loop and start executing the next loop.
This might help you avoid the problem at line
"r=fillmissing(rp + 0./(rp~=0), 'linear', 1)".
But it might also cause problem somewhere else.
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Multidimensional Arrays 的更多信息
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
