R で時間から時間を減算する方法 (例あり)


次のいずれかの方法を使用して、R の 1 時間から特定の時間を減算できます。

方法 1: Base R を使用する

 #create new column that subtracts 4 hours from time
df$subtract4 <- df$time - ( 4 * 3600 )

方法 2: Lubridate パッケージを使用する

 library (lubridate)

#create new column that subtracts 4 hours from time
df$subtract4 <- df$time - hours( 4 )

次の例は、次のデータ フレームで各メソッドを使用する方法を示しています。

 #create data frame
df <- data. frame (time=as. POSIXct (c('2022-01-03 08:04:15', '2022-01-05 14:04:15',
                                   '2022-01-05 20:03:53', '2022-01-06 03:29:13',
                                   '2022-01-06 06:15:00', '2022-01-07 10:48:11'),
                                   format='%Y-%m-%d %H:%M:%OS'),
                 sales=c(130, 98, 240, 244, 174, 193))

#view data frame
df

                 time sales
1 2022-01-03 08:04:15 130
2 2022-01-05 14:04:15 98
3 2022-01-05 20:03:53 240
4 2022-01-06 03:29:13 244
5 2022-01-06 06:15:00 174
6 2022-01-07 10:48:11 193

: 日付に時間を加算するには、上記の式のいずれかで減算記号を加算記号に置き換えるだけです。

例 1: 基数 R を使用して時刻から時間を減算する

次のコードは、 time列の各値から 4 回減算する、 subtract4という新しい列を作成する方法を示しています。

 #create new column that subtracts 4 hours from time
df$subtract4 <- df$time - ( 4 * 3600 )

#view updated data frame
df

                 time sales subtract4
1 2022-01-03 08:04:15 130 2022-01-03 04:04:15
2 2022-01-05 14:04:15 98 2022-01-05 10:04:15
3 2022-01-05 20:03:53 240 2022-01-05 16:03:53
4 2022-01-06 03:29:13 244 2022-01-05 23:29:13
5 2022-01-06 06:15:00 174 2022-01-06 02:15:00
6 2022-01-07 10:48:11 193 2022-01-07 06:48:11

新しいsubtract4列の値は、 time列の値から4時間を減算した値と等しいことに注意してください。

: 時間の値は R に秒として保存されるため、式で (4*3600) を使用します。1 時間は 3600 秒であるため、4 時間を減算するには 4 に 3600 を乗算する必要があります。

例 2: Lubridate パッケージを使用して時間から時間を減算する

次のコードは、 lubridateパッケージのhours()関数を使用して、 time列の各値から 4 時間を減算する、 subtract4という新しい列を作成する方法を示しています。

 library (lubridate)

#create new column that subtracts 4 hours from time
df$subtract4 <- df$time - hours( 4 )

#view updated data frame
df

                 time sales subtract4
1 2022-01-03 08:04:15 130 2022-01-03 04:04:15
2 2022-01-05 14:04:15 98 2022-01-05 10:04:15
3 2022-01-05 20:03:53 240 2022-01-05 16:03:53
4 2022-01-06 03:29:13 244 2022-01-05 23:29:13
5 2022-01-06 06:15:00 174 2022-01-06 02:15:00
6 2022-01-07 10:48:11 193 2022-01-07 06:48:11

新しいsubtract4列の値は、 time列の値から4時間を減算した値と等しいことに注意してください。

このメソッドは、基本的な R メソッドと同じ結果を生成することに注意してください。

追加リソース

次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。

Rで日付を数値に変換する方法
Rで日付から月を抽出する方法
R で日付に月を加算および減算する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です