Answered
How can I insert a variable into a plot legend, with a special character following the variable?
Using STRING: plot(rand(5,4)) m = pi; legend('','','',"Gradient: "+m+"\circ/mm") Using CHAR: plot(rand(5,4)) m = pi; t = ...

1 month ago | 0

| accepted

Answered
I want to index a element of a vector after defining it
"Any correct way to do this?" Yes, but only if you want to make your code complex, awkward, and obfuscated: subsref(factor(56)...

1 month ago | 0

| accepted

Answered
Lineanchor not working in regexp
My guess is that you have not taken the newline characters into account. Note the difference: tx1 = sprintf('Hello\r\nWorld'); ...

2 months ago | 0

Answered
How do I convert a decimal number of months to a datetime format?
"The only way I can think of is manually converting by identifying the length of the month the offset represents." Let MATLAB d...

2 months ago | 1

Answered
How can I keep the first two elements from CSV values in a string
S = ["";"philosopher,historian,writer,political activist,literary critic";"philosopher";"philosopher,writer"] T = regexp(S,'^[^...

2 months ago | 0

| accepted

Answered
How to compute mean value of a field in a struct?
Rather than nesting lots of separate structures in a cell array, why not just use one structure array?: C = load('featuresnew.m...

2 months ago | 0

| accepted

Answered
splitting a vector into separate vectors
A much better approach using a cell array: V = [2,2,2,2,2,4,4,4,7,7,8,9] L = diff(find([1,diff(V),1])) C = mat2cell(V,1,L)

2 months ago | 0

| accepted

Answered
Concatenating Mixed numbers looses the decimal places
"How can I retain the decimal numbers " A = [n,double([MaxI,MinI]),medianMaxIntensity, Hlg,Bren,fwhm2D]; % ^^^^^^^^ ...

2 months ago | 0

| accepted

Answered
How do I do char2num (assume Ascii)?
https://www.mathworks.com/help/matlab/matlab_prog/unicode-and-ascii-values.html txt = char(120:122) num = double(txt) If you ...

2 months ago | 0

| accepted

Answered
writematrix: how to get formatted txt-output?
M = [100,0,4500;0,1,38.29;1,1,38.22] S = join(compose("%10.2f",M),''); writelines(S,"test.txt") Checking: type test.txt

2 months ago | 0

Answered
Random number vector with only two values
Indexing is a basic MATLAB superpower. You can easily use indexing to select from a vector of any values: V = [0,pi]; W = V(ra...

2 months ago | 1

| accepted

Answered
Character string to numeric vector
txt = ' ( 0.0357 -0.0001 0.0051) ' vec = sscanf(txt(3:end),'%f',[1,3]) or vec = sscanf(strtrim(txt),'(%f%f%f',[1,3])

2 months ago | 0

Answered
how to delete the files in a folder using matlab?
delete(fullfile(inpath,baseGran,'sigma*.img'))

2 months ago | 1

Answered
Looping string array into parsed timestamp
"... that is causing issues with the indexing." Because you are mixing up indexing into string arrays with the characters conta...

2 months ago | 1

| accepted

Answered
Combining text with non-zero elements of a 2D array
Without an intermediate matrix: N = [10,0,0,0,0;,0,20,0,0,0;,10,0,20,0,0;,0,0,0,10,0;,0,0,0,0,30] C = {'ABC';'DEF';'GHI';'JKL'...

2 months ago | 0

| accepted

Answered
In a table, when I try assigning a value to a new column based on some criteria, I get error that "assignment to elements using simple assignment statement is not supported"
"I don't think I should need a for loop to iterate through each row and replace the value at the "indx" location" You do not ne...

2 months ago | 0

| accepted

Answered
How to replace values in a table with the outputs of another code?
Use curly brace indexing to access the content of the table: https://www.mathworks.com/help/matlab/matlab_prog/access-data-in-a...

2 months ago | 0

| accepted

Answered
Matlab function only giving me 1 output
"why is my Vmax just giving me 1 value." Because you used mrdivide / (matrix right division) instead of rdivide ./ (array right...

2 months ago | 2

Answered
Customizing plots that are matrices of column vectors?
X = 1:9; Y = rand(9,2); S = scatter(X,Y); set(S,{'Marker'},{'o';'*'})

2 months ago | 1

Answered
How to use lazy quantifiers in look ahead?
Regular expressions are the wrong tool for this. It might be possible with some effort, but personally I would just use the corr...

2 months ago | 0

| accepted

Submitted


Interactive Regular Expression Tool
Develop and refine regular expressions in an interactive figure that shows all of REGEXP's outputs.

2 months ago | 13 downloads |

Thumbnail

Answered
Loop through a table using a specific condition and generate new table satisfying the particular condition
ID = ["ID1";"ID1";"ID2";"ID3"]; Value = [5;7;3;1]; T = table(ID,Value) G = groupsummary(T,'ID','sum')

3 months ago | 0

Answered
locate within the first column of a matrix a sequence of numbers and extract those rows
Use DIFF, which is a key MATLAB function. M = load('M.mat').M X = diff([0;find(diff([M(:,1);0])<0)]); Y = size(M,2); C = mat...

3 months ago | 0

| accepted

Answered
Rearrange elements of matrix based on an index matrix
Yes, it is awkward. x=randn(5,3) z=randn(5,3) [~,I] = sort(x,2) Perhaps S = size(I); [R,~] = ndgrid(1:S(1),1:S(2)); J = s...

3 months ago | 0

| accepted

Answered
Is this a bug of MATLAB?
"I think the correct answer should be longer. Is it a bug or an expected behavior?" It is not a bug: the default number of dig...

3 months ago | 1

| accepted

Answered
converting string to num and table
Tip for the future: upload your raw data, not a data extract that you have already imported and modified. S = load('sample1.mat...

3 months ago | 1

| accepted

Answered
Faster alternate to all() function
N = 10000; varname = rand(246658,4) idxkeep = randi(size(varname,1),1,N); tic for i=1:N idx = idxkeep(i); idy = ...

3 months ago | 1

| accepted

Answered
Finding mean value over certain amount of values in a matrix
Avoid SQUEEZE. More robust: A = [1,2,3;4,6,8;7,12,7;14,4,23] N = 2; C = size(A,2); B = reshape(mean(reshape(A,N,[],C),1),[],...

3 months ago | 2

Answered
subdivide numbers inside a file .xlsx
Simpler: C = readcell('file.xlsx'); M = str2double(split(C(6:end),', ')) T = array2table(M, 'VariableNames',split(C(5),', '))...

3 months ago | 0

Answered
Your variables are reaching 2GB limit,revert to save -v7.3 This will be slower but avoids matlab not saving the data.
"How should I resolve this?" Specify the version when calling SAVE: save(.. , '-v7.3')

3 months ago | 0

Load more