R3—日期处理
一. 问题引入
下面是一个房地产价格数据,现在想要提取2008年6月份的数据进行分析,在R中该如何操作呢?
city price bedrooms squarefeet lotsize latitude longitude month
1 San Francisco 1470000 3 2424 NA 37.75651 -122.4469 2008-06-01
2 San Francisco 385000 0 1304 2143 37.71010 -122.4216 2009-06-01
3 San Francisco 1043000 2 1400 NA 37.77984 -122.3928 2009-06-01
4 San Francisco 560000 2 1149 NA 37.78696 -122.4225 2009-01-01
5 San Francisco 419000 NA NA NA 37.78696 -122.4225 2008-03-01
6 San Francisco 552000 NA NA NA 37.78430 -122.3909 2009-03-01
# 这里就涉及到R的日期处理方法!
二. R日期处理方法简介
# 1)取出当前日期
> Sys.Date()
[1] "2015-04-20"
> date()
[1] "Mon Apr 20 15:46:32 2015"
#2)字符串转化为日期
as.Date()可以将一个字符串转换为日期值,默认格式是yyyy-mm-dd。
##在R中,日期类型其实是double类型,实际存储的是从1970年1月1日以来的天数!
> as.Date('2015-4-20') ##得到"2007-02-01",显示为字符串,但实际是用double存储的!
>as.double(as.Date("1970-01-01")) #结果为0,是从1970年1月1日以来的天数。## 可以把定制的日期字符串转换为日期型
> as.Date("2015年4月20日", "%Y年%m月%d日")
[1] "2015-04-20"
#3)日期转化为字符串
> today <- Sys.Date()
> format(today, "%Y年%m月%d日")
[1] "2015年04月20日"
$4)计算日期差
由于日期内部是用double存储的天数,所以是可以相减的。
> today<-Sys.Date()
> age30<- as.Date("2020-01-01")
> age30-today
Time difference of 1717 days
@@@离我30岁只有1717天了啊!
##用difftime()函数可以计算相关的秒数、分钟数、小时数、天数、周数
difftime(today, age30, units="weeks") #还可以是“secs”, “mins”, “hours”, “days”
> difftime(today, age30, units="weeks")
Time difference of -245.2857 weeks
三. 需求解答
> dat<-subset(x = dat,subset =(as.double(as.Date(dat$month))>=14031 & as.double(as.Date(dat$month))<=14060)) #as.Date将字符型month转化成日期型,as.double转化成double型!
> head(dat)
city price bedrooms squarefeet lotsize latitude longitude month
1 San Francisco 1470000 3 2424 NA 37.75651 -122.4469 2008-06-01
24 San Francisco 815000 NA NA NA 37.74917 -122.4500 2008-06-01
29 San Francisco 548000 2 1100 1792 37.71153 -122.4623 2008-06-01
33 San Francisco 400000 NA NA NA 37.79035 -122.4126 2008-06-01
59 San Francisco 1795000 3 1028 NA 37.80241 -122.4186 2008-06-01
88 San Francisco 2300000 10 6600 2738 37.77007 -122.4320 2008-06-01
R3—日期处理的更多相关文章
- atitit.日期,星期,时候的显示方法ISO 8601标准
atitit.日期,星期,时候的显示方法ISO 8601标准 1. ISO 86011 2. DAte日期的显示1 2.1. Normal1 2.2. 顺序日期表示法(可以将一年内的天数直接表示)1 ...
- 使用指定格式的字符串变量格式化日期字符串,DateAndTime取时间间隔
private void btn_GetTime_Click(object sender, EventArgs e) { lab_time.Text = DateTime.Now.ToString(& ...
- 建议大家使用Java 8 的日期、时间,而非java.util.Date
建议大家使用Java 8 的日期.时间,而非java.util.Date. 详细原因见:如何在Java 8中愉快地处理日期和时间 总结一下就是, java.util.Date 太乱,如 月份从0开始. ...
- NSIS限制程序运行次数和使用日期
#七八年前写着玩的小东西,实际用途不大,但对刚接触nsis的新手来说应该还有一些帮助,包括创建控件,获取系统时间等,与诸位共勉! !system '>blank set/p=MSCF<nu ...
- 日期格式代码出现两次的错误 ORA-01810
错误的原因是使用了两次MM . 一.Oracle中使用to_date()时格式化日期需要注意格式码 如:select to_date('2005-01-01 11:11:21','yyyy-MM-dd ...
- 一起学微软Power BI系列-使用技巧(5)自定义PowerBI时间日期表
1.日期函数表作用 经常使用Excel或者PowerBI,Power Pivot做报表,时间日期是一个重要的纬度,加上做一些钻取,时间日期函数表不可避免.所以今天就给大家分享一个自定义的做日期表的方法 ...
- excel 日期/数字格式不生效需要但双击才会生效的解决办法
原因: Excel2007设置过单元格格式后,并不能立即生效必须挨个双击单元格,才能生效.数据行很多.效率太低. 原因:主要是一些从网上拷贝过来的日期或数字excel默认为文本格式或特殊-中文数字格式 ...
- Jquery mobiscroll 移动设备(手机)wap日期时间选择插件以及滑动、滚动插件
Jquery Mobiscroll是一个用于触摸设备(Android phones, iPhone, iPad, Galaxy Tab)的日期和时间选择器jQuery插件.以及各种滑动插件 可以让用户 ...
- C# DateTime日期格式化
在C#中DateTime是一个包含日期.时间的类型,此类型通过ToString()转换为字符串时,可根据传入给Tostring()的参数转换为多种字符串格式. 目录 1. 分类 2. 制式类型 3. ...
随机推荐
- 期中HTML代码及技术博客
<!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- Java package
Java中的一个包就是一个类库单元,包内包含有一组类,它们在单一的名称空间之下被组织在了一起.这个名称空间就是包名.可以使用import关键字来导入一个包.例如使用import java.util.* ...
- MySQL 基于xtrabackup备份—热备工具
xtrabackup(仅对InnoDB存储引擎支持热备) percona公司开发 改进的MySQL分支:percona-server 存储引擎改进:InnoDB —> XtraDB 使用本地的R ...
- 各种GIT代码托管工具比较
bitbucket免费支持5个开发成员的团队创建无限私有代码托管库. GOES是一个由GO语音编写的自组GIT托管服务. gitorious 是一个基于GIT版本控制系统的WEB项目托管平台,基于RU ...
- c 用指针操作结构体数组
重点:指针自加,指向下一个结构体数组单元 #include <stdio.h> #include <stdlib.h> #include <string.h> #d ...
- Java知识点整理(二)
List.Set.Map典型实现 HashMap/ConcurrentHashMap Java线程池 Java线程池详解 如何更好的使用JAVA线程池 Spring MVC Spring MVC架构浅 ...
- zookeeper应用实例
创建持久节点和临时节点 ZooKeeper zk=new ZooKeeper(HOST,CLIENT_SESSION_TIMEOUT,new Watcher(){ @Override public v ...
- ssh-keygen的使用方法及配置authorized_keys两台linux机器相互认证
一.概述 1.就是为了让两个linux机器之间使用ssh不需要用户名和密码.采用了数字签名RSA或者DSA来完成这个操作 2.模型分析 假设 A (192.168.20.59)为客户机器,B(192. ...
- JS中数组和字符串具有的方法,以及substring,substr和slice的用法与区别
String 对象属性 属性 描述 constructor 对创建该对象的函数的引用 length 字符串的长度 prototype 允许您向对象添加属性和方法 String 对象方法 方法 描述 ...
- CentOS 7下安装pptp服务端手记 ok
主要配置步骤 1. 安装前检查系统支持 2. 安装必要包 3. 修改相关配置文件 4. 设置开机自动启动 pptpd, iptables 5. iptables配置网络 6. 阿里云ECS可能还需要几 ...