create a variable and specify its column

2 vues (au cours des 30 derniers jours)
alpedhuez
alpedhuez le 28 Juin 2020
Commenté : alpedhuez le 29 Juin 2020
Suppose I have a table
day temperature
1/1/2020 30
I want to create a vaiable 'month" from 'day' and put it next to 'day' like
day month temperature
1/1/2020 1 30
Please advise.
  2 commentaires
the cyclist
the cyclist le 28 Juin 2020
For you future reference, it is better to actually show what you have via MATLAB syntax (or actually uploading the data). Otherwise, we need to guess about the formats of everything.
Specifically, is day a string, a character array, or a datetime?
alpedhuez
alpedhuez le 29 Juin 2020
'movevar' will allow to choose the location of a variable in a table.

Connectez-vous pour commenter.

Réponse acceptée

the cyclist
the cyclist le 28 Juin 2020
The specifics will depend on what format the variable day is. Here, I assume it is a datetime.
% Create the table
day = datetime('1/1/2020');
temperature = 30;
T = table(day,temperature);
% Derive month from day
T.month = month(day);
% Rearrange the columns
T = T(:,[1 3 2])
You might find this documention page helpful.

Plus de réponses (1)

Gaganjyoti Baishya
Gaganjyoti Baishya le 28 Juin 2020
Hi
You can get the month from the day string by iterating it till you get the month.
for i=1:size
if day(i)=='/'
if day(i+2)=='/'
month=day(i+1);
else
month=day(i+1) + day(i+2) %char concatenate
end
break;
end
month gives the required value of month. You just need to put it in the column.

Catégories

En savoir plus sur Just for fun dans Help Center et File Exchange

Tags

Produits


Version

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by