R で difftime を使用して時差を計算する方法
difftime()関数を使用すると、R の 2 つの日付または日時間の時差を計算できます。
この関数は次の基本構文を使用します。
difftime(time1, time2, units=" days ")
金:
- time1、time2 : 日付または日時の両方
- 単位: 時差に使用する単位 (デフォルトは「日」ですが、他のオプションには「秒」、「分」、「時間」、「週」が含まれます)
次の例は、さまざまなシナリオでdifftime()関数を使用する方法を示しています。
例 1: difftime() を使用して、さまざまな単位で時差を計算します。
次のコードは、 difftime()関数を使用して、異なる単位を使用して 2 つの日付/時刻間の時差を計算する方法を示しています。
#define two datetimes
first <- "2022-08-20 08:15:22"
second <- "2022-01-01 20:04:48"
#calculate time difference in days
difftime(first, second)
Time difference of 230.5073 days
#calculate time difference in seconds
difftime(first, second, units=" secs ")
Time difference of 19915834 secs
#calculate time difference in minutes
difftime(first, second, units=" mins ")
Time difference of 331930.6 mins
#calculate time difference in hours
difftime(first, second, units=" hours ")
Time difference of 5532.176 hours
#calculate time difference in weeks
difftime(first, second, units=" weeks ")
Time difference of 32.92962 weeks
単位引数を使用すると、2 つの日付と時刻の間の時差を異なる単位で計算できます。
例 2: HH:MM:SS 形式で時差を計算する
hmsライブラリのas_hms()関数を使用して、2 つの日付/時刻間の時差を HH:MM:SS 形式で計算することもできます。
library (hms)
#define two datetimes
first <- "2022-01-01 20:15:22"
second <- "2022-01-01 08:04:48"
#calculate difference between datetimes in hours, minutes, seconds
as_hms(difftime(first, second))
12:10:34
出力には、2 つの日付と時刻の時間差が、時、分、秒の形式で表示されます。
このシナリオでは、2 つの時間の差は12時間10分34秒です。
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。
UNIX タイムスタンプを R の日付に変換する方法
R で文字をタイムスタンプに変換する方法
Rで日付から年を抽出する方法
R でデータフレームを日付で並べ替える方法