A(B)=[] in anonymous function
8 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
ANKUR KUMAR
le 21 Août 2018
Modifié(e) : Stephen23
le 21 Août 2018
A=randi(100,1,100);
A(randi(100,1,10))=[];
The above code works well but how to write it in an anonymous function.
delete_ele=@(X,Y) X(Y)=[]
It throws the error,
delete_ele=@(X,Y) X(Y)=[]
↑
Error: The expression to the left of the equals sign is not
a valid target for an assignment.
How to resolve this issue.
0 commentaires
Réponse acceptée
Stephen23
le 21 Août 2018
Modifié(e) : Stephen23
le 21 Août 2018
"A(B)=[] in anonymous function"
This is not possible: anonymous function do not allow allocations. But you can use indexing:
delete_ele = @(X,Y) X(~ismember(1:numel(X),Y));
Tested:
>> A = randi(100,1,100);
>> B = randi(100,1,10);
>> C = delete_ele(A,B);
>> size(C)
ans =
1 90
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Calculus dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!