R语言-时间日期函数

R语言时间日期函数

1. 返回当前日期时间,有两种方式:

Sys.time()
date()
  • 举例

      format(Sys.time(), "%a %b %d %X %Y %Z")#[1] "周五 五月 06 14:17:40 2016 CST"format(Sys.time(), "%H:%M:%OS3")#[1] "14:17:40.658"sysYear <- format(Sys.time(), '%Y')sysMonth <- format(Sys.time(), '%m')sysDay <- format(Sys.time(), '%d')sysHour <- format(Sys.time(), '%H')sysMinute <- format(Sys.time(), '%M')sysSecend <- format(Sys.time(), '%S')

2. 仅返回当前日期,使用函数Sys.Date()

  • 举例

      today <-Sys.Date()format(today, format="%B %d %Y")"June 20 2007"

3. 转换日期变量格式,有多种方式:

  • as.Date():

      此函数有多种使用方式。一、类似于函数format()和as.character(),返回给定的日期参数的特定格式,如as.Date(Sys.Date())的返回结果为"2011-08-09"。   二、形式as.Date(x,origin) 返回自参数origin(参数值为一日期)起第x天。如as.Date(2, origin="2011-08-09")的返回结果为"2011-08-11"。三、as.Date("2007-02-01")   #得到"2007-02-01",显示为字符串,但实际是用double存储的四、可以把定制的日期字符串转换为日期型,as.Date("2007年2月1日", "%Y年%m月%d日"), 结果 "2007-02-01"
  • format():

      一、如命令format(Sys.Date(), "%Y-%m-%d %w")的返回结果为"2011-08-09 2",其中2表示2011年8月9日为周二;二、若不指定返回的格式,则函数format()默认按照格式"%Y-%m-%d"返回,也就是说format(Sys.Date())和format(Sys.Date(), "%Y-%m-%d")的返回结果是相同的。

    format()参数的格式和涵义
    格 式涵 义
    %Y年份,以四位数字表示,2007
    %m月份,以数字形式表示,从01到12
    %d月份中当的天数,从01到31
    %b月份,缩写,Feb
    %B月份,完整的月份名,指英文,February
    %y年份,以二位数字表示,07
    …………
  • as.character():

      其使用方法同format()相同,如:as.character(Sys.Date())。
  • 举例

      # convert date info in format 'mm/dd/yyyy'strDates <- c("01/05/1965", "08/16/1975")dates <- as.Date(strDates, "%m/%d/%Y")# convert dates to character datastrDates <- as.character(dates)

4. 返回特定日期所对应的星期、月份、季度,分别使用函数:

weekdays()
months()
quarters()

5. 求两个日期之间的差,可通过函数julian或者diff.Date()实现

如求2015-09-10和2015-08-09两天之间相隔的天数,可以通过
julian(as.Date("2015-09-10"),origin=as.Date("2015-08-09"))[[1]]来求得。#计算日期差#由于日期内部是用double存储的天数,所以是可以相减的。
today <- Sys.Date()
gtd <- as.Date("2015-07-01")  
today - gtd
#Time difference of 310 days
#原来我到今天为止已经实践GTD有310天了。#用difftime()函数可以计算相关的秒数、分钟数、小时数、天数、周数
difftime(today, gtd, units="weeks")  #还可以是“secs”, “mins”, “hours”, “days”
#Time difference of 44.28571 weeks

6. 生成时间序列向量,也有多种方式:

一、使用函数as.Date()。如as.Date(1:20, origin="2011-08-09")。二、使用函数seq()。和seq()的一般使用方式的区别在于,梯度可以是"day", "week", "month" 或者"year",甚至是"3 months"等。如seq(as.Date("2000/1/1"), by="month", length.out=3)的返回结果为 "2000-01-01" "2000-02-01" "2000-03-01";函数seq(as.Date("2000/1/1"), as.Date("2003/1/1"), by="6 months")的返回结果为 "2000-01-01" "2000-07-01" "2001-01-01" "2001-07-01" "2002-01-01" "2002-07-01" "2003-01-01"。

7. 绘制图形,使用plot()即可

plot(x,y),其中参数x为日期时间类型的对象,y是与x相对应的数值。

8. 在R中日期实际是double类型,是从1970年1月1日以来的天数

typeof(Sys.Date())
#[1] "double"
as.double(as.Date("1970-01-01"))  #结果为0,是从1970年1月1日以来的天数。

9. POSIX类 ?POSIXct

The POSIXct class stores date/time values as the number of seconds since January 1, 1970, while the POSIXlt class stores them as a list with elements for second, minute, hour, day, month, and year, among others.
POSIXct 是以1970年1月1号开始的以秒进行存储,如果是负数,则是1970年以前;正数则是1970年以后。
POSIXlt 是以列表的形式存储:年、月、日、时、分、秒;
mydate = as.POSIXlt('2005-4-19 7:01:00')
## names(mydate)
## "sec"   "min"   "hour"  "mday"  "mon"   "year"  "wday"  "yday"  "isdst"
mydate$mday
## 19
默认情况下,日期之前是以/或者-进行分隔,而时间则以:进行分隔;
输入的标准格式为:日期 时间(日期与时间中间有空隔隔开)
时间的标准格式为:时:分 或者 时:分:秒;
如果输入的格式不是标准格式,则同样需要使用strptime函数,利用format来进行指定。

10. R语言记录程序运行的时间

# 可以根据不同的需求调整最后的输出格式
# Since you only want the H:M:S, we can ignore the date...
# but you have to be careful about time-zone issues
AllTimeUsingFun <- function(start_time) {start_time <- as.POSIXct(start_time)dt <- difftime(Sys.time(), start_time, units="secs")format(.POSIXct(dt, tz="GMT"), "%H:%M:%S")
}#how to use:
##start
start_time <- Sys.time()
##programSys.sleep(5)
##end
AllTimeUsingFun(start_time)

转载于:https://www.cnblogs.com/cloudtj/articles/5465874.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/573618.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

各种水龙头拆卸图解_水龙头上包卫生纸,竟有这种效果!邻居看了都想学

你家该大扫除了吗&#xff1f;如何打扫厨房可是个大问题厨房的卫生问题今天一一教你解决洗碗池洗碗池经常不擦&#xff0c;污渍会积得很厚&#xff0c;陈旧老污渍怎么清除呢&#xff1f;方法&#xff1a;白醋 用毛巾裹在水龙头上&#xff0c;倒上白醋。因为白醋具有腐蚀性&…

php按id获取整条数据库,Ajax取得数据库的json值,想通过id获取对应信息,但是都默认获取第一条了...

PHP<?PHP header("Content-Type: text/html; charsetutf-8");include(conn.php);//链接数据库$sql select id,article_name,check_box,radio_box,content,input_name,input_number,input_title,input_describe from article;$res mysqli_query($conn,$sql);$da…

服务器系统及软件常见漏洞

服务器系统及软件常见漏洞 漏洞名称允许Traceroute探测远端WWW服务支持TRACE请求远端WWW服务提供了对WebDAV的支持远端WEB服务器上存在/robots.txt文件远端VNC服务正在运行远端HTTP服务器类型和版本信息泄漏远端DNS服务允许递归查询远程代理服务器允许连接任意端口远程代理服务…

链式存储结构 php,【PHP 实现数据结构】链式队列

什么是链式队列队列是一种“先进先出”的存储结构,是一种特殊的线性表&#xff0c;于它只允许在表的前端(front)进行删除操作&#xff0c;而在表的后端(rear)进行插入操作。通常队列可以分为顺序队列和链式队列两种实现&#xff0c;顺序队列顾名思义就是采用顺序存储&#xff0…

base64_encode() 和 base64_decode() 8bit图片通过网络传输

一、为什么要使用base64编码&#xff1f; Base64是一种基于64个可打印字符来表示二进制数据的表示方法。 有些网络传送渠道并不支持所有的字节&#xff0c;例如传统的邮件只支持可见字符的传送&#xff0c;像ASCII码的控制字符就 不能通过邮件传送。这样用途就受到了很大的限制…

图标圆角角度_UI设计中图标的规范及原则【附全套视频】

icon是一种图标格式&#xff0c;用于系统图标、软件图标等&#xff0c;这种图标扩展名为*.icon、*.ico。常见的软件或windows桌面上的那些图标一般都是ICON格式的。icon元素包括两个可选的子元素:small-icon子元素和large-icon子元素。文件名是Web应用归档文件(WAR)的根的相对路…

设计模式(十一):从文Finder中认识组合模式(Composite Pattern)

上一篇博客中我们从从电影院中认识了"迭代器模式"(Iterator Pattern)&#xff0c;今天我们就从文件系统中来认识一下“组合模式”&#xff08;Composite Pattern&#xff09;。说到组合模式&#xff0c;在此我想聊一下在类图中有组合与聚合的关系&#xff0c;这两者都…

PHP7不能用string类名,解决thinkphp php7 Cannot use ‘String’ as class name as it is reserved...

我有一网站之前用php7运行thinkphp没有什么问题&#xff0c;但是最近发现开启验证码的时候发现有错误Cannot use String as class name as it is reserved在google baidu搜索了一下还是没有解决方法于是自己动手解决&#xff0c;看来我是第一个分享出来的人原因&#xff1a;有一…

python序列化对象的函数_使 Python 对象可序列化的函数

from copy import deepcopyfrom str import basestringdef enserializable(model):"""本函数用于将对象可序列化&#xff0c;且返回的字典都是新的(deepcopy)"""if isinstance(model, dict):model deepcopy(model)to_pop []for k in model:# 过…

Activity(二)

多个Activity之间的调用 建立一个Activity 配置layout文件夹下fragment_main.xml文件 在layout下新建other.xml文件 xml文件创建的id需要编译才能生成 在同一工程src文件夹下新建class文件 查找id并作关联 加入监听器&#xff0c;调用另一个Activity的类 调用监听器 注&#xf…

php用asp文件js,asp下用fso生成js文件的代码

asp下用fso生成js文件的代码更新时间&#xff1a;2008年06月24日 23:47:54 作者&#xff1a;asp下使用fso生成js代码的方法Set fso Server.CreateObject("Scripting.FileSystemObject")set fdfso.createtextfile(server.MapPath("../category.js"),true)…

relativelayout中按键不能点_CNC | M80/M800系列系统常见按键和外部存储器故障

一、按键无效现象1.操作人员对机床操作时画面无反应现象M80/M800系列系统在使用键盘或触摸屏输入时&#xff0c;请勿连击键盘按键&#xff0c;输入一 次即可。键盘每向NC输入一次&#xff0c;NC系统需要计算一次&#xff0c;连续的多次重复输入&#xff0c;NC多次重复计算、显示…

Problem J

Total Submission(s) : 102 Accepted Submission(s) : 60 Problem Description有一楼梯共M级&#xff0c;刚开始时你在第一级&#xff0c;若每次只能跨上一级或二级&#xff0c;要走上第M级&#xff0c;共有多少种走法&#xff1f;Input输入数据首先包含一个整数N&#xff0c…

百度AI人脸检测测颜值php,百度AI人脸识别测颜值源码app

百度AI人脸识别测颜值源码app是由百度AI官方提供的&#xff0c;将人脸识别分为了两个接口&#xff0c;v2与vv3。需要根据文档权限来选择接口类型&#xff0c;这款软件非常方便用户学习和体验。想要学习相关信息的朋友可以来看看哦。百度AI人脸识别测颜值介绍百度AI人脸识别测颜…

python3 换源_CentOS 7.5 下 python3 安装及 pip 换源

从EPEL仓库安装Python3CentOS 7.5 默认python2的环境,可使用yum直接安装python3,之后切换/bin中的python向python3,查看版本yum install python3 -yls -l /bin/pythonpython -Vrm /bin/pythonln -s /bin/python3 /bin/pythonpython -V此时pip仍为py2,可以使用pip3或python -m p…

php使用redis存储

一、Redis扩展模块 # wget https://codeload.github.com/phpredis/phpredis/zip/develop -O phpredis.zip # unzip phpredis.zip # cd phpredis-develop/ # /usr/local/php/bin/phpize # ./configure --with-php-config/usr/local/php/bin/php-config # make # make install 二…

vs2015如何连接oracle,VS2015中C#连接Oracle数据库

硬件环境&#xff1a;Win10 64位 VS2015 ODP.Net for VS2015配置ODP.NetOracle Developer Tools for Visual Studio 12.1.0.2.4 下载次文件Oracle Data Provider for .NET 4 12.1.0.2.0Oracle Providers for ASP.NET 4 12.1.0.2.0下载完成后运行MSI安装程序进行安装&#xff0…

sql数据导入错误代码: 0x80004005_PL/SQL 非预定义异常、自定义异常处理、RAISE_APPLICATION_ERROR...

抛出异常Oracle有三种类型的异常错误&#xff1a;1&#xff0e; 预定义&#xff08;Predefined&#xff09;异常ORACLE预定义的异常情况大约有24个。对这种异常情况的处理&#xff0c;无需在程序中定义&#xff0c;由ORACLE自动将其引发。2&#xff0e; 非预定义&#xff08;Pr…

【转】const int *p和int * const p的区别(常量指针与指向常量的指针)

【转】作者&#xff1a;xwdreamer 出处&#xff1a;http://www.cnblogs.com/xwdreamer 对于指针和常量&#xff0c;有以下三种形式都是正确的&#xff1a; const char * myPtr &char_A;//指向常量的指针 char * const myPtr &char_A;//常量的指针 const char * con…

Oracle能用什么软件访问,使用工具访问ORACLE数据库(一)

常用的数据库工具 sqlplus保证你的实例是启动的&#xff1a;ps -elf |grep ora_ |grep -v grep&#xff0c;可以查看出已经启动的oracle进程发现很多ora_smon_orcl 名字&#xff1a;ora_进程名字_实例名字如何启动oracle实例export ORACLE_SIDorcl 指定登陆实例的名字叫o…