Specify columns inside a for loop

2 vues (au cours des 30 derniers jours)
Andrew Alkiviades
Andrew Alkiviades le 13 Juil 2011
Hi
I would like to know if the code I attached will do the following: I want the value in the for loop to multiply by the price. But more specifically, I want this value to multiply by 10 if it is in the columns 1-8 and for the rest of the columns multiply by 15.
Thanks
for j=1:365
for i=1:25
if data(1,i)>=1 && data(1,i)<=8
price=10;
else
price=15;
end

Réponse acceptée

Nathan Greco
Nathan Greco le 13 Juil 2011
You are only checking of the data within any given column is between 1 and 8, which isn't what you describe to be wanting.
Just compare i's:
if i >= 1 && i <= 8
%...
else
%...
end
I represents the columns you are iterating over, so you would want to test versus i.

Plus de réponses (1)

Chirag Gupta
Chirag Gupta le 13 Juil 2011
You might not need to use a for loop
% rand data
data = rand(365,25);
% colums 1-8
data(:,1:8) = data(:,1:8)*10;
% colums 9 -25
data(:,9:25) = data(:,9:25)*15;
  1 commentaire
Nathan Greco
Nathan Greco le 13 Juil 2011
True, but that's not what he asked.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements 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!

Translated by