Community Profile

Jos (10584)

1.410 total contributions since 2006

Professional Interests: neuroscience, physics, mathematics

View details...

Contributions in
View by

Counting occurrences of a pair of numbers in a logical vector
A vectorised alternative: A = [0 1 0 0 1 0 0 0 0 0 1 1 0 0 1 0 1 ]; % Input vector ix = find(A) ix = ix(2:2:end) B = cumsum(...

circa 21 ore ago | 0

Using range in a vector
I am a little confused by your problem, but here are my thoughts. You might want to use the function ANY, or its sibling ALL, or...

4 giorni ago | 0

There is an error in exp function but it doesn't tell what the error is?
Use dbstop if error and inspect the contents of the variables! You'll see what is wrong :-)

5 giorni ago | 0

Set up an OR argument for equation
Simpler, without an if-else: v = (xdot_1-xdot_2)).*(sign(x1-x2-gap)+1)/2; fp = (k_inp*(x1-x2-gap) + (v>0) * c_inp * (xdot_1-xd...

7 giorni ago | 0

Set up an OR argument for equation
Can't you use logical indexing? A simplified example v = 10:20 q = v > 13 & v < 18 f(q) = 2*v(q) f(~q) = 30 + v(q)

7 giorni ago | 1

How can I compare two measurements which are composed of matrices such as [0 1 0 0...]
You are looking for a measure of consistency between two measurements which are represented as binary vectors of the same length...

7 giorni ago | 0

| accepted

How can I make each cell array consistent in length?
A final attempt to answer this question :-) C = {1:4 1:2 ; 1:5 1:6 ; 1 1:3} % a m-by-n cell array N = cellfun(@numel, C) % old...

7 giorni ago | 1

| accepted

split a diagonal matrix
Having a vector V with any number of elements, this does the job: V = [2 1 4] n = numel(V) ; M = zeros(n,n,n) ; M(linspace...

7 giorni ago | 1

Extracting columns from a matrix, corresponding start and end times
The easiest approach is to create a for loop over the events Nevents = nume(EventTimes) R = zeros(64, 250, Nevents) % pre-allo...

7 giorni ago | 0

| accepted

How can I make each cell array consistent in length?
C = {1:3 4 ; 5:9 10:12 ; 13:14 15} % a m-by-n cell array N = cellfun(@numel, C) maxN = max(N(:)) padfun = @(v) [v zeros(1, m...

7 giorni ago | 1

replace values with nans
Take a look at logical indexing or the function ind2sub M = randi(10,8,6) % use indices of elements for which condition is tru...

7 giorni ago | 0

Rearranging Array Rows into Multiple Blocks while Maintaining the Old Order
You should learn about indexing, one of the most essential aspects of Matlab: M = randi(4,10,5) ; M(:,1) = 1:size(M,1) % exampl...

7 giorni ago | 1

| accepted

Combine Array from different cell
This is called concatenation. See the documentation of the function CAT. Matlab allows you to concatenate a bunch of column vec...

7 giorni ago | 0

how to make a column vector with evenly spaced entries with different coefficients
A simple one-liner: y = 3 ; k = 4 ; ycoeff(k:k:(k*k), 1) = (-k:-1)*y

10 giorni ago | 0

Mathematical computation for ordering matrices
You can sort the values according to the second column using sortrows. Something along these lines might work for you: centers ...

14 giorni ago | 0

| accepted

Concatenating a 3D matrix in the 3rd dimension when some cells are empty
B = cat(1,A{1,1,1,:}) % N-by-2 array

17 giorni ago | 0

How can I make each cell array consistent in length?
If you make them the same length, you can also store them in a matrix. In that case, my PADCAT function is your friend :-) C = ...

17 giorni ago | 1

Creating a table in matlab based on 2 variables and a for loop if statement.
This creates your table N = 11 ; % 10 timestamps time = 0:N-1 ; x = [4 3 1 4 2] ; y = [1 2 3 1 4] ; Z = repmat(y, N, 1) fo...

18 giorni ago | 0

organising large sets of data into a irregular matrix
You can use cell arrays for this. A=[ 32 7.83425 32 8.0074 5 8.01005 5 8.0119 5 8.10775 19 8.1082 ...

18 giorni ago | 0

| accepted

frequency of 2D matrix in 3D matrix
Convert the 3D N-by-M-by-Z matrix into a 2D Z-by-(N*M) matrix and use unique with the rows option on that. An example: M3D = ca...

18 giorni ago | 0

How to generate data
I suggest you read parts of the starters manual and the help, and start exploring matlab :-) help linspace help colon x = 1:2...

18 giorni ago | 0

Work with a data set to compute std
Step 1 - Write a function that calculates the correlation between two vectors X and Y with equal lengths, using the formula you ...

19 giorni ago | 0

Finding the first and the last elements of consecutive numbers and combining them with a semi colon.
Using diff and logical indexing, this turns out to be quite simple: outliers = [1 2 3 4 5 10 20 21 22 23]; TF = diff(outliers)...

20 giorni ago | 2

Split vector every time data changes from 2 to 1
Another approach: A = [1 2 1 1 2 1 2 2 1 1 1 2 2 2 1 1 1 2].' % data C = accumarray(cumsum([0 ; diff(A)==-1])+1, A, [], @(x) {...

21 giorni ago | 1

Plotting a circle always around a moving point
Adapted from the help of animatedline: numpoints = 10000; x = linspace(0,4*pi,numpoints); y = sin(x); pc = [-.1 -.1 .2 ...

21 giorni ago | 0

Issues with function ismember
Comparing floating point numbers is always tricky! Two number may look the same for you, but could still be slightly different f...

23 giorni ago | 1

| accepted

Submitted

randp
pseudorandom integers from a specified discrete distribution

How to find a combination like this
Computationally less efficient, and mathematically less beautiful as Walters' snippet, but more matlab-ish in style: N = 4 ; C...

24 giorni ago | 0