referencing arrays

2 visualizzazioni (ultimi 30 giorni)
Trader
Trader il 5 Apr 2012
I have 2 arrys that are the same size, I'd like to use the values from one array to reference values in the other.
Example
action =
['short']
['long']
['waiting']
['short']
profit =
[-50.00]
[100.00]
[0]
[20.00]
I'd like to take the profit values where action = 'short' and put them into a third array called results.
so results = [-50.00] [20.00]
what is the best way to do this?

Risposte (2)

Sean de Wolski
Sean de Wolski il 5 Apr 2012
action = {
['short']
['long']
['waiting']
['short']};
profit = {
[-50.00]
[100.00]
[0]
[20.00]};
results = profit(ismember(action,'short'))

Jan
Jan il 5 Apr 2012
action = {'short' 'long' 'waiting' 'short'};
result = profit(strcmp('short', action));
  2 Commenti
Trader
Trader il 6 Apr 2012
Jan - when I run your code i get a 0x0 cell. There is definitely data in the profits column and 'short' in my action array. Both action and profit are cell arrays, would this make a difference? Do I need cell2mat before doing all of this?
Trader
Trader il 6 Apr 2012
profit: [455x1 double]
action: {455x1 cell}

Accedi per commentare.

Categorie

Scopri di più su Multidimensional Arrays in Help Center e File Exchange

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by