How to append data inbetween the Array without overwriting its original data ?
2 views (last 30 days)
Show older comments
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 !!
0 Comments
Accepted Answer
Azzi Abdelmalek
on 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 Comments
More Answers (1)
Mischa Kim
on 15 Mar 2014
Edited: Mischa Kim
on 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.
See Also
Categories
Find more on Whos in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!