Matlab 如何导入时间数据?
我的数据格式是这样的:obstimedata12011-1-49:3012522011-1-410:0012332011-1-410:3011442011-1-411:0...
我的数据格式是这样的:
obs time data
1 2011-1-4 9:30 125
2 2011-1-4 10:00 123
3 2011-1-4 10:30 114
4 2011-1-4 11:00 118
数据存放在excel表格里,我用A=xlsread('**.xlsx')读取,结果第二列的时间数据无法读入,请高手指点。 展开
obs time data
1 2011-1-4 9:30 125
2 2011-1-4 10:00 123
3 2011-1-4 10:30 114
4 2011-1-4 11:00 118
数据存放在excel表格里,我用A=xlsread('**.xlsx')读取,结果第二列的时间数据无法读入,请高手指点。 展开
2018-08-02 · 互联网+时代高效组织信息化平台
关注
展开全部
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、数据内是否存在非法字符!
清除后,就可以运算了
有的时候还需要:
把修改过的区域再进一步修改,全选中,然后“单元格格式”,把单元格格式由“常规”改为“数值”
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-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
展开全部
先在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');
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呢?
追答
把那一列的单元格格式,改为“常规”。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的数据是有表头吗?使用字符串的方式进行读取就没问题了吧
追问
没有表头,第一行的变量名可以不要的,只要能把时间导入就好。不会用字符串哦。。。。
追答
[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就包含了时间这一列
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询