2011-12-16 3 views
9

これはかなり基本的だと確信していますが、システム日付からさまざまな時間を抽出することはできません。単純に、%Mまたは%Sを使用して現在の分と秒を正確に抽出できない理由はわかりません。何かご意見は?Sys.Date()から秒数を含む現在時刻を取得するR

現在、私のマシンでは12:38 pmです。このため

> format(Sys.Date(), "%c") 
[1] "12/16/2011 12:00:00 AM" 

> R.Version() 
$platform 
[1] "i386-pc-mingw32" 

$arch 
[1] "i386" 

$os 
[1] "mingw32" 

$system 
[1] "i386, mingw32" 

$status 
[1] "" 

$major 
[1] "2" 

$minor 
[1] "14.0" 

$year 
[1] "2011" 

$month 
[1] "10" 

$day 
[1] "31" 

$`svn rev` 
[1] "57496" 

$language 
[1] "R" 

$version.string 
[1] "R version 2.14.0 (2011-10-31)" 
+0

私の 'format(Sys.time() %M:%S ")' "14:49:41" –

答えて

12

、あなたはおそらくSys.time()の代わりSys.Date()を使用します。

format(Sys.time(), "%S") 

Sys.Date、本質的に "YYYY-MM-DD" のような形式の文字列ですDateオブジェクトを返します。時間、分、秒は記録されません。

ことがは、時間、分、秒を持っていないこと。その変換では、DatePOSIXltオブジェクトにDateオブジェクトに変換する方法、format.Dateを派遣しているため(これは少しformat(Sys.Date, "%S")にお電話であなたから隠されていましたオブジェクトは、GMT真夜中の時刻を表しているかのように扱われます。したがって、秒の要素に対して常に "00"の値が返されます。

+0

私が言ったように、私は非常に明白な何かを見逃していました。ありがとう! – Btibert3

+0

日付と時刻の操作について「明白な」ものが見つからないということになると、あなたは常にあなたに良い会社がたくさんあるでしょう!」(http://msmvps.com/blogs/jon_skeet/archive/2009 /11/02/omg-ponies-aka-humanity-epic-fail.aspx) –

+0

[上のコメントの参照にリンクを更新](http://codeblog.jonskeet.uk/2009/11/02/omg-ponies- aka-humanity-epic-fail /)が含まれます。 –

関連する問題