diff options
Diffstat (limited to 'sourcecodes/bnt-master/docs/cellarray.html')
| -rw-r--r-- | sourcecodes/bnt-master/docs/cellarray.html | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/sourcecodes/bnt-master/docs/cellarray.html b/sourcecodes/bnt-master/docs/cellarray.html new file mode 100644 index 00000000..19a8da21 --- /dev/null +++ b/sourcecodes/bnt-master/docs/cellarray.html @@ -0,0 +1,59 @@ +Cell arrays are a little tricky in Matlab. +Consider this example. + +C=num2cell(rand(2,3)) +C = + [0.4565] [0.8214] [0.6154] + [0.0185] [0.4447] [0.7919] + +C{1,2} % this is the contents of this cell (could be a vector or a string) +ans = + 0.8214 + +C{1:2,2} % this is the contents of these cells - returns multiple +answers! +ans = + 0.8214 +ans = + 0.4447 + +A = C(1:2,2) % this is a slice of the cell array +ans = + [0.8214] + [0.4447] + +A{1} % A is itself a cell array +ans = + 0.8214 + + + +>> C(1:2,2)=0 % can't assign a scalar to a cell array +C(1:2,2)=0 +??? Conversion to cell from double is not possible. + + +>> C(1:2,2)={0;0} % can assign a cell array to a cell array +C(1:2,2)={0;0} +C = + [0.4565] [0] [0.6154] + [0.0185] [0] [0.7919] + + +BTW, I use cell arrays for evidence for 2 reasons: + +1. [] indicates missing values +2. it can easily represent vector-valued nodes + +The following example makes this clear + +C{1,1} = [] +C{2,1} = rand(3,1) + +C = + [] [0] [0.6154] + [3x1 double] [0] [0.7919] + + +Hope this helps, +Kevin |
