importing excel file time format

1 回表示 (過去 30 日間)
AA
AA 2016 年 6 月 24 日
回答済み: Peter Perkins 2016 年 11 月 2 日
suppose the following cell array being imported from the excel file
'Date' 'Time'
'Date' 'Time'
'Mon, Apr-25-16' 0.0763888888888889
NaN NaN
'Mon, Apr-25-16' 0.0763888888888889
'Fri, Mar-25-16' 0.0347222222222222
'Wed, Feb-24-16' 0.0347222222222222
'Tue, Jan-26-16' 0.0347222222222222
'Fri, Dec-25-15' 0.0347222222222222
'Wed, Nov-25-15' 0.0347222222222222
Column two represents time. in the originally excel file it looks like this.
Date Time
Date Time
Mon, Apr-25-16 01:50
Thu, May-26-16 01:50
Mon, Apr-25-16 01:50
Fri, Mar-25-16 00:50
Wed, Feb-24-16 00:50
Tue, Jan-26-16 00:50
Fri, Dec-25-15 00:50
Wed, Nov-25-15 00:50
How can I convert the column 2 into the original time format. Once I have the original time format I want to convert the time into minutes the following way:
Y(:,2)= hour(numFormat)*60 + minute(numFormat);
  1 件のコメント
Walter Roberson
Walter Roberson 2016 年 11 月 1 日
Could you attach a sample file? Doing this right might depend on exactly how the data is stored.
Also, which MATLAB version are you using, and which operating system?

サインインしてコメントする。

採用された回答

Peter Perkins
Peter Perkins 2016 年 11 月 2 日
In R2014b or later, assuming you have a cell array of strings for the date and a vector of doubles for the time,
>> datetime({'Mon, Apr-25-16';'Fri, Mar-25-16'},'InputFormat','eee, MMM-dd-yy') ...
+ days([0.0763888888888889;0.0347222222222222])
ans =
2×1 datetime array
25-Apr-2016 01:50:00
25-Mar-2016 00:49:59

その他の回答 (4 件)

Stalin Samuel
Stalin Samuel 2016 年 6 月 24 日

AA
AA 2016 年 11 月 1 日
編集済み: Walter Roberson 2016 年 11 月 1 日
matlabtime=[datestr(numOnly(:,1),'HH:MM')];
that gives me a char file.
i cannot convert it using the formula below.
numFormat = datenum(X{:,1},'yyyymmdd HHMMSS');
Y(:,1)= floor(numFormat);
Y(:,2)= hour(numFormat)*60 + minute(numFormat);
Y(:,3:6)= x{:,2:5};

AA
AA 2016 年 11 月 2 日
Can anyone help me?
  1 件のコメント
Walter Roberson
Walter Roberson 2016 年 11 月 2 日
Nope. Not without answers to what I asked before.

サインインしてコメントする。


AA
AA 2016 年 11 月 2 日
I have attached a sample. when I import the file then i get decimals instead of time numbers hh:mm. My purpose is to convert the time into minutes.
numFormat = datenum(sample{:,1},'HHMMSS');
Y(:,1)= floor(numFormat);
Y(:,2)= hour(numFormat)*60 + minute(numFormat);
Y(:,3:6)= x{:,2:5};
  1 件のコメント
AA
AA 2016 年 11 月 2 日
and this is my version 8.5.0.197613 (R2015a)

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSpreadsheets についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by