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

the cyclist
the cyclist 2020년 6월 28일
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 2020년 6월 29일
'movevar' will allow to choose the location of a variable in a table.

댓글을 달려면 로그인하십시오.

 채택된 답변

the cyclist
the cyclist 2020년 6월 28일

1 개 추천

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.

추가 답변 (1개)

Gaganjyoti Baishya
Gaganjyoti Baishya 2020년 6월 28일

0 개 추천

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.

카테고리

도움말 센터File Exchange에서 Tables에 대해 자세히 알아보기

제품

릴리스

R2020a

태그

질문:

2020년 6월 28일

댓글:

2020년 6월 29일

Community Treasure Hunt

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

Start Hunting!

Translated by