How to append data inbetween the Array without overwriting its original data ?

2 vues (au cours des 30 derniers jours)
Hello,
i am a beginner in matlab ,Sorry if i ask something stupid , but i really need help
i have a array named " train_data " of size 67x103 (having 67 instances and 103 features)
i want to add "two" corrosponding rows to each 67 rows of train_data
for example:
row-1 -->0.45 0.34 0.38 .....
row-2 has to be added as:
row-2 --> log(0.45) log(0.34) log(0.38) ......
row-3 has to be added as:
row-3 --> exp(0.45) exp(0.34) exp(0.38) ......
is it possible to do such thing in "train_data" array without overwriting it ??
Please Help , i tried my best to make my question clear , i am hoping for the answer
Thank You for Consideration !!

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 15 Mar 2014
[n,m]=size(A)
B=permute(reshape([A;log(A);exp(A)]',m,n,3),[2 1 3])
out=reshape(B(:,:)',m,[])'
  2 commentaires
pooja
pooja le 15 Mar 2014
Modifié(e) : pooja le 15 Mar 2014
Thank you Soooo Much...You saved My life Sir
i exactly needed this code
Now i am trying to understand it :P
pooja
pooja le 20 Mar 2014
hello sir sorry agan
i have 14 class x 67 labels in target
problem : 1st column as it is ,add 2nd and 3rd column having same value as 1st column , reulting dimensions shold be 14 x 201
i tried so many combinations on your given code like
[q,p]=size(train_target);
Y=permute(reshape([train_target;train_target;train_target]',q,p,3),[2 1 3]);
train_target=reshape(Y(:,:)',q,[])';
train_target=transpose(train_target);
but all are disaster .... can you help again please ?

Connectez-vous pour commenter.

Plus de réponses (1)

Mischa Kim
Mischa Kim le 15 Mar 2014
Modifié(e) : Mischa Kim le 15 Mar 2014
Pooja, check out INSERTROWS (description in Jiro's blog) in the File Exchange. If you need to add rows at the top or bottom of an array you can simply use:
C = [A; B]
where you add A on top or B on the bottom of the other array.

Community Treasure Hunt

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

Start Hunting!

Translated by