Reputation: 67
How would I go about converting x = 'abs' Into abs so that I could do z = abs(-5) = 5. Or where x = 'randfunc' where 'randfunc' can be any input string relating to a function.
>> x
x =
abs
>> x(-5)
Subscript indices must either be real positive
integers or logicals.
Upvotes: 3
Views: 140
Reputation: 272467
Use str2func
:
x = 'abs';
fh = str2func(x);
fh(-5) % Prints 5
Upvotes: 8