Effacer les filtres
Effacer les filtres

Problem Expanding a Matrix

2 vues (au cours des 30 derniers jours)
Charles Martineau
Charles Martineau le 31 Mai 2012
Hi all,
How can I do the following:
Say that I start with a vector with the elements [5 3 4 9 10] - think of these numbers like daily stock prices. I want to transform this vector into (an approx.) of intraday stock prices - 1/10 of day.
Therefore my vector should look like [ 5 4.8 4.6 4.4 .4.2 4 3.8 3.6 3.4 3.2 3 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4 4.5 5 5.5 6 6.5 7 7.5 8 8.5 9 9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9 10]
THank you!!

Réponse acceptée

Charles Martineau
Charles Martineau le 31 Mai 2012
I figured out some other way
x = 0:4; y = [5 3 4 9 10]; >> xnew = 0:.1:4; ynew = interp1(x,y,xnew,'linear');

Plus de réponses (3)

Walter Roberson
Walter Roberson le 31 Mai 2012
NewV = interp1(1:length(V), V, V(1):.1:V(end));
  1 commentaire
Charles Martineau
Charles Martineau le 31 Mai 2012
Hi Walter,
Thanks for the help but why I am generating a vector of NaN NaN NaN NaN NaN....
I simply created a vector V (3X1) and I get this strange result.
Thanks!

Connectez-vous pour commenter.


Ryan
Ryan le 31 Mai 2012
clear i j
elements = [5 3 4]; % Currently what you have
% Matrix containing intraday prices where each row corresponds to the intraday prices for each of the members of elements
intraday = [1 2 3 4 5 6 7 8;1 2 3 4 5 6 7 8;1 2 3 4 5 6 7 8];
j = length(elements);
for i = 1:j
newelements(i,:) = [elements(i),intraday(i,:)];
end
  3 commentaires
Ryan
Ryan le 31 Mai 2012
clear i j
elements = [5 3 4]; % Currently what you have
% Matrix containing intraday prices where each row corresponds to the intraday prices for each of the members of elements
intraday = [1 2 3 4 5 6 7 8;1 2 3 4 5 6 7 8;1 2 3 4 5 6 7 8];
j = length(elements);
for i = 1:j
newelements(i) = [elements(i),intraday(i,:)];
end
[r,c] = size(newelements);
newestelements = reshape(newelements,1,r*c);
I understand that you answered your own question, but I believe that should work. More round about than your approach though!
Charles Martineau
Charles Martineau le 31 Mai 2012
Hi Ryan,
THanks for help! I'll keep your answer in mind. The answer that I got came from StackOverflow

Connectez-vous pour commenter.


Ryan
Ryan le 1 Juin 2012
that should read newelements(i,:) = [elements(i),intraday(i,:)];
it is the same as before, it just reshapes it at the end.

Catégories

En savoir plus sur Startup and Shutdown dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by