Clear Filters
Clear Filters

how to create a matrix from existing matrix

1 view (last 30 days)
I have matrix A and need to create matrix B. Please let me know how to do it Sample: if true
A B
0.25 0
0.25
0.50
0.75
1
0.20 1.20
1.40
1.60
1.80
2
0.15 2.15
2.30
2.45
2.60
2.85
3
0.20 3.20
3.40
3.60
3.80
4
0.10 4.10
4.20
4.30
4.40
4.50
4.60
4.70
4.80
4.90
5
- -
- -
- -
  1 Comment
Azzi Abdelmalek
Azzi Abdelmalek on 19 Feb 2013
What is the relation between A and B?
Why for .2 there is 5 values and for 0.15 there is 6?

Sign in to comment.

Accepted Answer

José-Luis
José-Luis on 19 Feb 2013
a = [0.25 0.20 0.15 0.20 0.1];
your_mat = cell2mat(arrayfun(@(x,y) ((x:x:1)'+y)',a,0:numel(a)-1,'uniformoutput',false));
your_mat = [0;your_mat'];
  1 Comment
shanmukh
shanmukh on 19 Feb 2013
i am getting an error
if true
Error using arrayfun
All of the input arguments must be of the same size and shape.
Previous inputs had size 14163 in dimension 1. Input #3 has size 1.
Error in text_fin1 (line 52)
time = cell2mat(arrayfun(@(x,y)
((x:x:1)'+y)',n,0:numel(n)-1,'uniformoutput',false));

Sign in to comment.

More Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 19 Feb 2013
A=[0.25 0.2 .15 .2 .1]
a=cell2mat(arrayfun(@(x) x+A(x)-1:A(x):x,1:numel(A),'un', 0 ))'

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!