R语言学习 day_6

  • 关于日期时间的算数运算

    R支持POSIX类和Date类的日期和时间运算。

    POSIX类时间和数值相加,以秒为单位增加。

    Date类会以天为单位增加日期。

    R支持日期或时间的减法运算。Difftime()函数也是减法运算,但功能更强大。

    #转换日期格式
    > mytime=strptime("2018-01-16 20:47:13",format="%Y-%m-%d %H:%M:%S",tz="");mytime
    [1] "2018-01-16 20:47:13 CST"
    > #加法运算,以秒为单位
    > mytime+3600 #加一小时
    [1] "2018-01-16 21:47:13 CST"
    > mytime+86400 #加一天
    [1] "2018-01-17 20:47:13 CST"
    
    > st=as.Date("1949-10-01")
    > en=as.Date("2049-10-01")
    
    > en+1
    [1] "2049-10-02"
    
    > all_days=en-st
    > all_days
    Time difference of 36525 days
    > class(all_days)
    [1] "difftime"
    > 
    > all_days[[1]]
    [1] 36525
    > 
    > mydates=seq(st,by="day",length=25567)
    > head(mydates);tail(mydates)
    [1] "1949-10-01" "1949-10-02" "1949-10-03" "1949-10-04" "1949-10-05" "1949-10-06"
    [1] "2019-09-25" "2019-09-26" "2019-09-27" "2019-09-28" "2019-09-29" "2019-09-30"
    > mydates1=seq(st,en,by="day")
    > head(mydates1);tail(mydates1)
    [1] "1949-10-01" "1949-10-02" "1949-10-03" "1949-10-04" "1949-10-05" "1949-10-06"
    [1] "2049-09-26" "2049-09-27" "2049-09-28" "2049-09-29" "2049-09-30" "2049-10-01"
    > 
    > #查看时间范围,range()函数
    > range(mydates)
    [1] "1949-10-01" "2019-09-30"
    > difftime(en,st,units="weeks")
    Time difference of 5217.857 weeks
    > diffd=difftime(en,st);diffd
    Time difference of 36525 days
    > str(diffd) #查看diffd的结构
     'difftime' num 36525
     - attr(*, "units")= chr "days"
    
    > diffy=diffd/365.25;
    > diffy
    Time difference of 100 days
    > attr(diffy,"units")="years";diffy #转换diffy的单位,并显示
    Time difference of 100 years
    > mean(mydates) #求平均值
    [1] "1984-09-30"
    > summary(mydates)
            Min.      1st Qu.       Median         Mean      3rd Qu.         Max. 
    "1949-10-01" "1967-04-01" "1984-09-30" "1984-09-30" "2002-03-31" "2019-09-30"
    
  • ‘了解了建立时间序列函数对象的三大工具包

    常用的建立时间序列函数对象的三大工具包有zoo、xts、timeSeries

    zoo包里的时间序列由数据和索引组成

    xts包里的结构在zoo包的结构基础上进行了拓展,由数据、索引和属性组成

    timeSeries包是一整套用于金融数据分析和计算金融的软件包

    三种不同类型的时间序列对象之间可以通过as.PKG(as.zoo,as.xts,as.timeSeries)相互转换

  • 数据读取

    对于外部数据一般分为两种情况,一是CSV文件、txt文件、xls文件等一般格式文件;二是S-PLUS,SAS,SPSS,Stata等其他软件的专有格式。

    常用读取外部数据的函数有:read.csv(),read.table(),read.delim(),read.xls(),scan(),read.xlsx()

  • 数据存储和输出

    存储为RData文件、csv文件或txt文件。使用save、write函数

    save(capm_ret,file="ret.RData")
    
    write(x,"x.txt")
    write.table(newlongley,file="new_longley.txt")
    write.csv(longley,file="longley.csv",row.names=False)
    

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值