Cara mengurangi jam dari waktu di r (dengan contoh)


Anda dapat menggunakan salah satu metode berikut untuk mengurangi jumlah jam tertentu dari satu jam di R:

Metode 1: Gunakan Basis R

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

Metode 2: Gunakan paket Lubridate

 library (lubridate)

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

Contoh berikut menunjukkan cara menggunakan setiap metode dengan kerangka data berikut:

 #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

Catatan : Untuk menambahkan waktu pada suatu tanggal, cukup ganti tanda pengurangan dengan tanda penjumlahan pada salah satu rumus di atas.

Contoh 1: Mengurangi Jam dari Waktu Menggunakan Basis R

Kode berikut menunjukkan cara membuat kolom baru bernama subtract4 yang mengurangi empat kali dari setiap nilai di kolom waktu :

 #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

Perhatikan bahwa nilai pada kolom pengurangan4 yang baru sama dengan nilai pada kolom waktu dengan pengurangan empat jam.

Catatan : Kita menggunakan (4*3600) dalam rumusnya karena nilai waktu disimpan sebagai detik di R. Karena ada 3600 detik dalam satu jam, kita perlu mengalikan 4 dengan 3600 untuk mengurangi 4 jam.

Contoh 2: Kurangi jam dari waktu menggunakan paket Lubridate

Kode berikut menunjukkan cara menggunakan fungsi jam() dari paket lubridate untuk membuat kolom baru bernama subtract4 yang mengurangi empat jam dari setiap nilai di kolom waktu :

 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

Perhatikan bahwa nilai pada kolom pengurangan4 yang baru sama dengan nilai pada kolom waktu dengan pengurangan empat jam.

Perhatikan bahwa metode ini memberikan hasil yang sama dengan metode basis R.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:

Bagaimana cara mengubah tanggal menjadi angka di R
Cara mengekstrak bulan dari tanggal di R
Cara menambah dan mengurangi bulan ke tanggal di R

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *