MATLAB代做  | MATLAB代写  | MATLAB有偿编程
首 页
当前位置:MATLAB代做|MATLAB代写|MATLAB有偿编程matlab源码基础应用
MATLAB字符串连接问题        [↓跳到下载地址]
官方主页:源码共享网站:www.buycode.cn

联系方式:客服QQ:1747812398 买代码源码软件站,欢迎咨询

运行环境:Win9X/2000/XP/2003/

源码语言:简体中文

源码类型:源码程序 - 基础应用

推荐星级:

更新时间:2013-12-30 19:43:34

源码简介

由于很多高频数据的日期和时间都是单独存放的字符串,即把日期放在一列,把时间放在一列,这时为了需要,需把日期和时间合并成一列,然后用matlab转化成数字型日期,具体作法有两种:

  第一种:利用字符串连接法

  第二种:利用数字型日期相加法

  例子:现在有如下的字符型日期,需要转化为时间序列数字型向量

  '04/22/2013' '9:00:00'

  '04/22/2013' '9:01:00'

  '04/22/2013' '9:02:00'

  '04/22/2013' '9:03:00'

  '04/22/2013' '9:04:00'

  利用第一种方法:利用字符串连接法

  先来介绍matlab中关于字符串连接的方法,在matlab中做字符串连接的函数有两个:

  一、命令strcat(a,b,c...)

  二、用括号[]

  二者区别:

  区别1:strcat中a,b,c……如果是数组的话,长度必须一致,a,b,c中可以有不标量字符串。而'[a,b]'必须是行数相同的数组或者但个字符串。

  区别2:stract连接字符串之间没有空格,比如a与b之间没有空格,但是末尾可以有空格。而[]连接的两个字符串之间可以有空格。

  区别3:如果a、b都是数组的话,比如都是一列等长度的数组,那么stract(a,b)为一列数组,长度于a和b相同,数组元素是把a、b中的对应字符串连接在了一起,而‘[a,b]’则是生成两列数组,第一列是a,第二列是b。

  例子:

  a1 =

  '04/22/2013'

  '04/22/2013'

  '04/22/2013'

  '04/22/2013'

  '04/22/2013'

  b1 =

  '9:00:00'

  '9:01:00'

  '9:02:00'

  '9:03:00'

  '9:04:00'

  K>> [a1 b1]

  ans =

  '04/22/2013' '9:00:00'

  '04/22/2013' '9:01:00'

  '04/22/2013' '9:02:00'

  '04/22/2013' '9:03:00'

  '04/22/2013' '9:04:00'

  注意:上面显然是两列数组字符串

  strcat(a1,b1)

  ans =

  '04/22/20139:00:00'

  '04/22/20139:01:00'

  '04/22/20139:02:00'

  '04/22/20139:03:00'

  '04/22/20139:04:00'

  K>> strcat(a1,b1,' /')

  ans =

  '04/22/20139:00:00 /'

  '04/22/20139:01:00 /'

  '04/22/20139:02:00 /'

  '04/22/20139:03:00 /'

  '04/22/20139:04:00 /'

  K>> strcat(a1,' ',b1)

  ans =

  '04/22/20139:00:00'

  '04/22/20139:01:00'

  '04/22/20139:02:00'

  '04/22/20139:03:00'

  '04/22/20139:04:00'

  注意:上面本意是要在日期和时间之间插入空格,显然strcat做不到。

  在介绍过连接方法后,下一步需要把字符串连接起来,方法:

  K>> c=strcat(a1,'/',b1)

  c =

  '04/22/2013/9:00:00'

  '04/22/2013/9:01:00'

  '04/22/2013/9:02:00'

  '04/22/2013/9:03:00'

  '04/22/2013/9:04:00'

  在把上述的字符串数组转化为数字型日期:

  K>> datenum(c)

  ans =

  7.3535e+05

  7.3535e+05

  7.3535e+05

  7.3535e+05

  7.3535e+05

  第二种:利用数字型日期相加法(发现这种方法不可取,因为单独把字符型时间变成数值型时间,年月日是从最近的所在日的年的第一天开始的,发现第一个时间变成了01-Jan-2013 09:00:00,这时需要把日期起点设置为0,或者直接减去默认的那个日期,即相加后,再减去datenum(01-Jan-2013 ),有兴趣的可以做下)

  对分别把字符串日期和时间转化为数值型日期,然后相加:

  K>> aa=datenum(a1);

  K>> bb=datenum(b1)

  bb =

  7.3524e+05

  7.3524e+05

  7.3524e+05

  7.3524e+05

  7.3524e+05

  K>> a+b

  Undefined function 'plus' for input arguments of type 'cell'.

  K>> datestr(bb)

  ans =

  01-Jan-2013 09:00:00

  01-Jan-2013 09:01:00

  01-Jan-2013 09:02:00

  01-Jan-2013 09:03:00

  01-Jan-2013 09:04:00

  K>> c=aa+bb

  c =

  1.4706e+06

  1.4706e+06

  1.4706e+06

  1.4706e+06

  1.4706e+06

  K>> datestr(c)

  ans =

  24-Apr-4026 09:00:00

  24-Apr-4026 09:01:00

  24-Apr-4026 09:02:00

  24-Apr-4026 09:03:00

  24-Apr-4026 09:04:00


提 示:本站所有源码只提供浏览,需要定制的朋友可以联系在线客服!
注意:价格根据项目的难易程度来定价格业务咨询

MATLAB字符串连接问题 --下载地址

注意:为避免不必要的误会,本站项目里的源码只公开部分需要的联系在线客服

本站长期招聘程序代写高手,欢迎加入华南地区matlab团队

想创业却没有经验的人

无论你是否有过网上开店的经验,都可以随时联系在线客服,建立自己独立的网站
想开网店却不知道如何入手

淘宝创业成本低而且风险小,如果想开淘宝店的朋友可以联系在线客服。
想兼职创业,却不擅长交际与服务的人

在家创业月入5000元。网站程序+百套群发工具+网赚资料+域名+空间+本站终身代理资格,这样你网赚的条件全具备了。每天3小时管理、推广、收钱。
缺乏能快速赢利型产品的人

导入多种最新流行营销软件+网赚教程,让入驻者轻松加盟、复制有效成交技巧、快速赚钱。

源码评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

浏览说明

* 本站所有源码全部公开,随时随地浏览!
* MATLAB软件如用于商业用途,请购买正版!
* 如果您发现下载链接错误,请点击报告错误谢谢!
* 站内提供的所有软件包含破解及注册码均是由网上搜集,若侵犯了你的版权利益,敬请来信通知我们!
Copyright © 2008-2014 www.buycode.cn. All Rights Reserved.
页面执行时间:203.00290 毫秒