Matlab 如何导入时间数据?
发布网友
发布时间:2022-04-29 14:21
我来回答
共3个回答
热心网友
时间:2023-10-10 11:26
Matlab如何导入excel数据的方法如下:
1、一xlsread()函数,比import简单的多,具体语句:
A = xlsread('yourfilename.xls')
直接在MATLAB中定义矩阵,再复制粘贴得了
定义矩阵就先定义个空的
比如一维:a=zeros(1,N);%%这是1xN的
2、二维:a=zeros(N) %%这是NxN的
然后在workspace窗口打开这个空矩阵,把excel中的数直接复制过来就行了
xlsread(),但是对excel表要求还挺高的,比如有次我就导入失败,是因为名字虽然是.xls,但是实际是 文本文件(制表符分隔)(*.txt) 格式的,所以你注意一下,对照matlab帮助,一般不会有问题
在一个空单元格输入1,并复制它
选中要转化成数值的单元格区域
右击-选择性粘贴-乘补充回答:这样操作以后,仍不能转换数值,说明你原来的数据格式有问题,提示你检查以下几项:
1、数据内是否存在空格,(可以通过查找替换,将空格替换掉)
2、数据内是否存在非法字符!
清除后,就可以运算了
有的时候还需要:
把修改过的区域再进一步修改,全选中,然后“单元格格式”,把单元格格式由“常规”改为“数值”
热心网友
时间:2023-10-10 11:27
先在Excel里转为35369 这种格式,再导入matlab,最后再处理一下就好了,原文如下:
Consider the hypothetical file weight_log.xls with
Date Weight
10/31/96 174.8
11/29/96 179.3
12/30/96 190.4
01/31/97 185.7
To import this file, first convert the dates within Excel to a numeric format. In Windows, the file now appears as
Date Weight
35369 174.8
35398 175.3
35429 190.4
35461 185.7
Import the file:
wt = xlsread('weight_log.xls');
Convert the dates to the MATLAB reference date. If the file uses the 1900 date system (the default in Excel for Windows):
datecol = 1;
wt(:,datecol) = wt(:,datecol) + datenum('30-Dec-1899');追问谢谢哦,感觉方法挺好的。但是,怎样在excel中把日期格式转换为numeric format呢?
追答把那一列的单元格格式,改为“常规”。
热心网友
时间:2023-10-10 11:27
你的数据是有表头吗?使用字符串的方式进行读取就没问题了吧追问没有表头,第一行的变量名可以不要的,只要能把时间导入就好。不会用字符串哦。。。。
追答[NUMERIC,TXT,RAW]=xlsread('a.xlsx','a2:c5')
NUMERIC =
1 NaN 125
2 NaN 123
3 NaN 114
4 NaN 118
TXT =
'' '2011-1-4 9:30:00'
'' '2011-1-4 10:00:00'
'' '2011-1-4 10:30:00'
'' '2011-1-4 11:00:00'
RAW =
[1] '2011-1-4 9:30:00' [125]
[2] '2011-1-4 10:00:00' [123]
[3] '2011-1-4 10:30:00' [114]
[4] '2011-1-4 11:00:00' [118]
这里的RAW就包含了时间这一列