Community Profile

# Paolo

118 total contributions since 2018

View details...

Contributions in
View by

How to slice each string in a string array without using for loop
str2double(regexp(celldata,'(?<=-)\d+(?=-)','match','once')) ans = 12 11 9

environ un an ago | 1

how do I extract part of a cell of string values?
You could loop over it: arr = {"201808250100","201808250104"} f=cellstr(arr); cellfun(@(x) x(end-3:end),f,'un',0) ...

environ un an ago | 0

Import .txt data into CELL ARRAY
Try something like this: raw = fileread('mytextfile.txt'); [~,tok]=regexp(raw,'([A-Z][a-z]+).*?(\[.*?(?=[ ,][A-Z}]))','m...

environ un an ago | 0

returning differences between two matrices
You can use <https://www.mathworks.com/help/matlab/ref/setdiff.html setdiff>: [~,ia] = setdiff(A,B)

plus d'un an ago | 0

How do I find the biggest difference in an array?
>> A=[62 1 0]; >> max(reshape((diff(perms(A))),1,[])) 62 >> A = [62, 10, 18, 100, 4, -300]; >> max(reshape((diff...

plus d'un an ago | 0

How to get row indices of names ends with specified common substring
rowIdx=find(endsWith(names,pattern)) For previous versions: rowIdx=find(cellfun(@(x) strcmp(x(end-1:end),'_A'),names))...

plus d'un an ago | 1

| accepted

problem with coding cumsum statement
A few things here. First of all, you can't apply cumsum because, as MATLAB is telling you, the data is not numeric. When you are...

plus d'un an ago | 0

How to create a vector from a loop?
Simply preallocate and then write to the column vector: v = zeros(size(M,2),1); for i = 1:size(M,2) v(i,1)= (M(i,3))-...

plus d'un an ago | 0

| accepted

extracting numbers from a cell
d = SP{:} >>[d{1}{:}] 1 4 5 6

plus d'un an ago | 0

| accepted

Keep specific column variables and delete others?
Var1 = {'Sanchez';'Johnson';'Li';'Diaz';'Brown'}; Var2 = [38;43;38;40;49]; Var3 = logical([1;0;1;0;1]); T = table(V...

plus d'un an ago | 0

| accepted

how to extract certain data points from a long array based on certain criteria
veh_velo = [0,0,1,3,7,9,11,15,18,20,19,19]; accel_pedal = [0,0,2,4,6,9,10,11,12,13,13]; accel_pedal(veh_velo >= ...

plus d'un an ago | 0

| accepted

listing folders in directory with specific strings
You can work around it with a dos command: [status,cmdout] = dos("dir *") list = regexp(cmdout,'\d{6}-[A-Za-z]+','match');...

plus d'un an ago | 0

| accepted

How can I define a variable with a name based on an input?
If I am understanding your question correctly, you can use: ship_name = input('Name of the ship: ','s'); assignin('base'...

plus d'un an ago | 1

| accepted

Extract Variables from mixed string
You can use: mystring = '# Message: onset_pic1_8.png'; matches = regexp(mystring,'\d|[a-z]+(?=_|\d)','match') >>mat...

plus d'un an ago | 2

How to get sum of a range
You want to use the OR operator here and not the AND. Use: nnz(v<2 | v>4)

plus d'un an ago | 0

| accepted

how to delete row and column at a single command????????????
A(:,2:2:4) = []; A(2:2:4,:) = [];

plus d'un an ago | 0

Solved

Determine whether a vector is monotonically increasing
Return true if the elements of the input vector increase monotonically (i.e. each element is larger than the previous). Return f...

plus d'un an ago

Read data from a .txt file with two columns
If you want a cell array you can use: fileID = fopen('mytext.txt'); mydata = textscan(fileID,'%f%f','HeaderLines',1); ...

plus d'un an ago | 0

Problem 10 of MATLAB cody challenge
You can use: all(diff(x)>0)

plus d'un an ago | 0

How to clear out rows of zeros in a matrix?
Let a be your matrix: a(a(:,1)==0,:) = [];

plus d'un an ago | 0

| accepted

converting cells with strings inside cells into strings inside cells
cellfun(@(x) regexp(x,'(?<=@)(.*)(?=@)','match'),array_of_strings) Or cellfun(@(x) regexp(x,'(?<=@)(.*)(?=@)','tokens','...

plus d'un an ago | 1

| accepted

How to plot the occurency of an element?
For the vector a you specified period should be 1:8. Use: period = [1:8]; a = [1 1 1 2 3 3 6 6 6 6 6 7 8 8]; n = histcou...

plus d'un an ago | 0

| accepted

If I have a matrix My matrix is: BB = [-1 5 6;4 -3 2;5 6 -7]. How to print only positive values using a while loop?
>> BB(BB>0)' ans = 4 5 5 6 6 2 if you must use a loop: ii = 1; BB = [-1 5 6;4 -3 2; ...

plus d'un an ago | 0

| accepted

How do I count the number of new occurrences of a number in an array?
nnz(diff([0 (x==1)])==1)

plus d'un an ago | 1

How to filter out rows with NaNs from one variable and the same rows from another variable without NaNs.
indx = isnan(Y); Y(indx) = []; X(indx,:) = [];

plus d'un an ago | 0

Convert serial number dates to month and year
mydate = datetime(736473,'ConvertFrom','datenum','Format','yyyy-MM')

plus d'un an ago | 1

| accepted

Accessing multiple logical array indexing results at the same time
If I am understanding correctly the following code should solve your problem: test = magic(4); equalToTwo = find(test == 2...

plus d'un an ago | 0

| accepted

how can i count a cell in a randi vector
histcounts(randi(4,1,50)) The output of the function is the occurrences of numbers one to four respectively.

plus d'un an ago | 0

Why does can't I assign number greater than 1 to a matrix?
~eye(3) returns a logical array. You must convert it to double. Use: logicalMat = ~eye(3); myMat = double(logicalMat); m...

plus d'un an ago | 0

| accepted