# Jos (10584)

Last seen: plus d'un an il y a Actif depuis 2006

Followers: 3   Following: 0

I have been using Matlab since version 4 (1999 or so) and still prefer it over all other software tools available for data manipulation :-) My professional interests: neuroscience (motor control & eye movements), cognitive psychology physics, mathematics, teaching "The most important part of programming is writing the comments!"

All

#### Feeds

Afficher par

Réponse apportée
for loop taking too long to operate
Pre-allocation, and recoding using logical indexing and sum should speed things up popn1 = nan(300,1) ; % pre-allocation for i...

presque 4 ans il y a | 1

| A accepté

Réponse apportée
How to make columns the same size
A solution: A = [1 3 ; 2 4 ; 5 7] B = [10 11 12 ; 13 14 15] newB = repmat(mean(A,2), 1, size(B,2)) newB(1:size(B,1),:) = B

plus de 4 ans il y a | 0

| A accepté

A soumis

COLSHIFT
Circularly shift each column of a matrix

presque 5 ans il y a | 1 téléchargement |

Réponse apportée
How can I search a cell array for all instances of a character and replace it with something else?
Something along these lines, perhaps? C = {1.1 pi '*' ; 3 '*' 2.2} tf = cellfun(@(x) isequal(x,'*'), C) idx = find(tf)

presque 5 ans il y a | 0

Réponse apportée
If a number in a matrix is <9 add 5 to it
Use the same selection on the right hand side of the equal sign A(A<9) = A(A<9) + 5 I myself prefer to code it like this tf =...

presque 5 ans il y a | 0

| A accepté

Réponse apportée
How to set the diagonal of a cell array of matrices?
Well found, Mohammed! You should put as an answer here :-) Here is another method A = cell(4,4) % a cell array n = size(A,1)...

presque 5 ans il y a | 0

| A accepté

Réponse apportée
how to add a row and column to a matrix ?
One easy option is to do this for rows and columns separately A = [1 2 3 ; 4 5 6 ; 7 8 9] x = 3 ; % add a row/column of ones b...

presque 5 ans il y a | 5

| A accepté

Réponse apportée
How can I assign a variable to all the columns and all the rows of a matrix?
Are you looking for the function SIZE? data = rand(20,10) ; [numsubs, numtrials] = size(data)

presque 5 ans il y a | 0

| A accepté

Réponse apportée
Can this line in a code be written in a smarter way?
as others have mentioned before this makes ones head spin ... However, C(:,:,c)=(dC*C(:,:,c)+(dC*C(:,:,c)')'+C(:,:,c)*(-b)+C(:...

presque 5 ans il y a | 0

Réponse apportée
Indexing sections of arrays
x = 101:110 n = 3 tf = mod(0:numel(x)-1, 2*n) < n a = zeros(size(x)) a(tf) = x(tf) index = find(tf)

presque 5 ans il y a | 1

| A accepté

Réponse apportée
combinations with 2 columns
Take a look at ALLCOMB on the File Exchange: https://uk.mathworks.com/matlabcentral/fileexchange/10064-allcomb-varargin X = [1...

presque 5 ans il y a | 0

Réponse apportée
Combination of 4 Element
I make use of my function NCHOOSE, available here: https://www.mathworks.com/matlabcentral/fileexchange/20011-nchoose % bl is ...

presque 5 ans il y a | 0

| A accepté

Réponse apportée
How to find angle between two lines?
Use the dot product between the two vectors (v1 and v2) given by the four x,y pairs points. Given the formula: dot(v1,v2) = | ...

presque 5 ans il y a | 0

Réponse apportée
The most efficient way to locate the first 1's in each row of a matrix
m = [0 1 1 1 ;1 0 1 0; 0 0 1 1 ; 0 0 0 1] % a simple solution [r, c] = find(m') ; clear v1 v1(r,1) = c % another solution ...

presque 5 ans il y a | 0

Réponse apportée
Could anyone suggest me is there any way of choosing maximum and minimum values together
Here is a nice trick that also allows you to combine functions in a single call, which also can return the other outputs of thes...

presque 5 ans il y a | 1

Réponse apportée
How to have a multiple choice questionnaire that will ask the next question depending on the answer?
Take a look at all the dialog functions in matlab like questdlg, listdlg etc. Start however drawing a graph of all the question...

presque 5 ans il y a | 0

Réponse apportée
how to find nearest date corresponding value ?
Does this return what you want? R = AOD_440(closestIndex, [1 2]) % select first (date?) and second (values?) columns

presque 5 ans il y a | 0

| A accepté

Réponse apportée
Plotting an Archimedean Spiral
In the computation of x and y you wrongly multiply b with Th. You should multipy by Th / (2*pi): r = 12.5; %outer radius a =...

presque 5 ans il y a | 1

| A accepté

Réponse apportée
replace duplicate value by 0 in matrix or vector
% for small vectors: b = [1 2 1 3 2 1 4 2] b(sum(triu(b == b')) > 1) = 0

presque 5 ans il y a | 1

Réponse apportée
concatenate arrays after performing addition
A little simpler than all those permutes and reshapes: A = [1 2 3 ; 4 5 6 ; 7 8 9] ; B = [2 3 4 5] ; C = repmat(A, numel(B), ...

presque 5 ans il y a | 0

Réponse apportée
Alternation without for loop
% a sorting trick A = [1 2 3 4 5 6 7 8 9 10] B = [0.5 0.2 0.4 0.8 0.9] C = [A B] ; [~,ix] = sort([1:numel(A) 1:numel(B)]) C...

presque 5 ans il y a | 0

Réponse apportée
Matching closest values to each other
For larger vectors, where BSXFUN will require a lot of memory, function NEARESTPOINT might be useful A = rand(1000000,1) ; B = ...

presque 5 ans il y a | 1

| A accepté

Réponse apportée
Sort Descend Scientific Notation Error
You misuse the sort command. Simply: sortedu = sort(u ,'descend') would do :-) Moreover, if you remove the semicolons, you ...

presque 5 ans il y a | 0

Réponse apportée
making an array to simulate states of a paramagnet with values of -1,+1.
Create a random vector with two values and map those to -1 and 1. An easy solution (with n=10): x = 2 * randi([0 1], 1, 10) - 1...

presque 5 ans il y a | 0

| A accepté

Réponse apportée
for loop that changes specific letters to numbers
Another option: str = 'apple'; TF1 = any(lower(str) ~= 'aeiou'.')

presque 5 ans il y a | 2

Réponse apportée
Finding Min Value in array with changing condition
tf = a == 1 % create a logical array temp = cost(tf) % logical indexing to retrieve certain values mincost = min(t...

presque 5 ans il y a | 0

Réponse apportée
How to genetate random number under constraint
Brute force attempt: N = 20 ; xyRange = [100 1900] ; minimumDistance = 200 ; attempt_counter = 1 ; Distances = 0 ; while ...

presque 5 ans il y a | 0

Réponse apportée
Add an element to a 3D array
To concatenate two arrays A and B in the third dimension, use cat cat(3, A, B) Note that all the other dimensions of A and B s...

presque 5 ans il y a | 1

Réponse apportée
To concatenate rows in matrix within for loop based on if else statement
This code is weird. In each iteration of "index" you fill either a matrix temp or a matrix temp_noise with m rows of values. T...

presque 5 ans il y a | 1

Réponse apportée
To generate matrix from an array
More general, using indexing: A = [1 22 3 44 55 666 7 888 9] n = 2 B = A(((1:numel(A)-n).' + (0:n)))

presque 5 ans il y a | 0