Is there a function where the inputs are indices and the outputs are vectors with a value of 1 of that index and the remainder?
1 次查看(过去 30 天)
显示 更早的评论
I am finding a function (named func, here).
If I type the following code
y = func(10, [3, 5, 1]);
then I get the following result
y = [1; 0; 1; 0; 1; 0; 0; 0; 0; 0];
The vector y is a vector with size of 10 by 1, in which the third, fifth, and first elements are one, but the rest are all zero.
Actually, I am using now the following code:
a = [3, 5, 1];
y = zeros(10,1);
y(a) = 1;
I want to use an internal function!!
1 个评论
Walter Roberson
2020-2-20
You can construct expressions that create it without an explicit temporary variable, but they will be longer and less efficient than what you have now.
回答(1 个)
Siriniharika Katukam
2020-2-25
The procedure you followed seems to be a better way of doing it.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!