楼主: daijunliang
53486 6

[问答] R语言中如何提取日期变量的年、季度和月份呢? [推广有奖]

  • 6关注
  • 7粉丝

已卖:1424份资源

讲师

52%

还不是VIP/贵宾

-

威望
0
论坛币
8438 个
通用积分
7.0259
学术水平
21 点
热心指数
17 点
信用等级
7 点
经验
14939 点
帖子
135
精华
0
在线时间
898 小时
注册时间
2009-5-28
最后登录
2025-12-26

楼主
daijunliang 发表于 2015-6-8 14:49:46 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
R语言中如何提取日期变量的年、季度和月份呢?
比如这样的日期变量 date.png
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:如何提取 日期变量 R语言 如何

沙发
hyu9910 在职认证  发表于 2015-6-8 16:04:27
这个是字串操作嘛。 应该不难的

藤椅
ofzhengyi 发表于 2015-6-10 16:07:25
d是数据
  1. #取出年
  2. sapply(d,function(x){strsplit(x,"-")[[1]][1]})
  3. #取出月
  4. sapply(d,function(x){strsplit(x,"-")[[1]][2]})
  5. #取出日
  6. sapply(d,function(x){strsplit(x,"-")[[1]][3]})
复制代码
已有 3 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
浮生如梦99 + 1 + 1 + 1 精彩帖子
李会超 + 40 精彩帖子
admin_kefu + 30 热心帮助其他会员

总评分: 经验 + 40  论坛币 + 30  学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

板凳
ofzhengyi 发表于 2015-6-10 16:11:55
或者用lubridate包。
  1. library(lubridate)
  2. d<-c("2012-1-10","2013-5-9","2014-6-25")
  3. year(d)
  4. month(d)
  5. day(d)
复制代码
已有 3 人评分经验 论坛币 学术水平 热心指数 收起 理由
李会超 + 20 + 1 精彩帖子
ylsn1006 + 5 + 1 + 1 精彩帖子
求证1加1 + 1 热心帮助其他会员

总评分: 经验 + 20  论坛币 + 5  学术水平 + 2  热心指数 + 2   查看全部评分

报纸
daijunliang 发表于 2015-6-12 12:05:45 来自手机
非常感谢!

地板
limanxue 发表于 2015-9-23 11:04:37
学习了~~谢谢楼主以及各位回答的童鞋

7
W.B. 发表于 2015-10-29 05:05:48
如class(date)为character可用substr()提取前四个字符即年 以date中第一个元素为例:substr(date,1,4) 得年份2004 substr(date,6,7) 得月份01 substr(date,9,10)得日期02;
若class(date)为Date则可用format(date,"%Y")提取四位数年("%y"小写y只提取两位数年);
可用as.Date(as.numeric(date))把date转为Date格式 或用lubridate中的date<-ymd(date)转为POSIXct格式后用format();
一般可先把日期数据转成character处理后用再as.Date()或用lubridate包中的ymd()将其转成合适的格式;
参考网址:
[url=http://www.stat.berkeley.edu/~s133/dates.html]
已有 1 人评分论坛币 收起 理由
admin_kefu + 20 热心帮助其他会员

总评分: 论坛币 + 20   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 00:46