Converting "day of year" to "year", "month" and "day"
Hi Barradas, Thanks for your assistance. It has brought me closer to what I am looking for. I tried your code as shown below:
df1 <- read.table("SWSdata_1998_2002", header = TRUE)
df1$date <- as.Date(paste(df1$year, df1$day),format = "%Y %j",origin =
"1998-01-01")
head(df1)
year day Hr SWS date 1 1998 1 0 344 1998-01-01 2 1998 2 0 346 1998-01-02 3 1998 3 0 356 1998-01-03 4 1998 4 0 332 1998-01-04 5 1998 5 0 302 1998-01-05 6 1998 6 0 329 1998-01-06 What I need is the last two columns only (SWS, date). The first 3 columns (year, day Hr should go). Your code produced only 6 datasets. My dataset is 1,826 from 1998 to 2002. How do I generate this at once? Many many thanks for your time. I have pasted below a section of my dataset for your guidance, please. Jibrin year day Hr SWS 1998 1 0 344. 1998 2 0 346. 1998 3 0 356. 1998 4 0 332. 1998 5 0 302. 1998 6 0 329. 1998 7 0 395. 1998 8 0 359. 1998 9 0 471. 1998 10 0 392. 1998 11 0 346. 1998 12 0 387. 1998 13 0 393. 1998 14 0 367. 1998 15 0 320. 1998 16 0 309. 1998 17 0 341. 1998 18 0 329. 1998 19 0 322. 1998 20 0 429. 1998 21 0 433. 1998 22 0 398. 1998 23 0 393. 1998 24 0 393. 1998 25 0 423. 1998 26 0 426. 1998 27 0 429. 1998 28 0 386. 1998 29 0 381. 1998 30 0 375. 1998 31 0 365. 1998 32 0 450. 1998 33 0 381. 1998 34 0 316. 1998 35 0 351. 1998 36 0 306. 1998 37 0 312. 1998 38 0 320. 1998 39 0 339. 1998 40 0 395. 1998 41 0 429. 1998 42 0 479. 1998 43 0 495. 1998 44 0 407. 1998 45 0 358. 1998 46 0 360. 1998 47 0 382. 1998 48 0 394. 1998 49 0 393. 1998 50 0 435. 1998 51 0 408. 1998 52 0 360. 1998 53 0 372. 1998 54 0 376. 1998 55 0 379. 1998 56 0 361. 1998 57 0 333. 1998 58 0 321. 1998 59 0 344. 1998 60 0 412. 1998 61 0 428. 1998 62 0 401. 1998 63 0 369. 1998 64 0 343. 1998 65 0 330. 1998 66 0 317. 1998 67 0 296. 1998 68 0 282. 1998 69 0 404. 1998 70 0 530. 1998 71 0 525. 1998 72 0 484. 1998 73 0 430. 1998 74 0 388. 1998 75 0 347. 1998 76 0 337. 1998 77 0 342. 1998 78 0 305. 1998 79 0 329. 1998 80 0 420. 1998 81 0 564. 1998 82 0 483. 1998 83 0 385. 1998 84 0 393. 1998 85 0 437. 1998 86 0 441. 1998 87 0 434. 1998 88 0 471. 1998 89 0 429. 1998 90 0 412. 1998 91 0 370. 1998 92 0 326. 1998 93 0 357. 1998 94 0 338. 1998 95 0 380. 1998 96 0 339. 1998 97 0 312. 1998 98 0 313. 1998 99 0 327. 1998 100 0 362. 1998 101 0 358. 1998 102 0 387. 1998 103 0 397. 1998 104 0 375. 1998 105 0 350. 1998 106 0 357. 1998 107 0 472. 1998 108 0 526. 1998 109 0 396. 1998 110 0 374. 1998 111 0 376. 1998 112 0 355. 1998 113 0 343. 1998 114 0 425. 1998 115 0 426. 1998 116 0 479. 1998 117 0 469. 1998 118 0 425. 1998 119 0 344. 1998 120 0 341. 1998 121 0 426. 1998 122 0 601. 1998 123 0 476. 1998 124 0 670. 1998 125 0 585. 1998 126 0 496. 1998 127 0 479. 1998 128 0 569. 1998 129 0 531. 1998 130 0 489. 1998 131 0 484. 1998 132 0 480. 1998 133 0 393. 1998 134 0 332. 1998 135 0 327. 1998 136 0 493. 1998 137 0 493. 1998 138 0 430. 1998 139 0 396. 1998 140 0 408. 1998 141 0 416. 1998 142 0 376. 1998 143 0 375. 1998 144 0 415. 1998 145 0 407. 1998 146 0 398. 1998 147 0 352. 1998 148 0 349. 1998 149 0 517. 1998 150 0 597. 1998 151 0 480. 1998 152 0 435. 1998 153 0 408. 1998 154 0 441. 1998 155 0 397. 1998 156 0 374. 1998 157 0 413. 1998 158 0 582. 1998 159 0 513. 1998 160 0 459. 1998 161 0 466. 1998 162 0 414. 1998 163 0 354. 1998 164 0 341. 1998 165 0 343. 1998 166 0 369. 1998 167 0 411. 1998 168 0 355. 1998 169 0 333. 1998 170 0 443. 1998 171 0 426. 1998 172 0 419. 1998 173 0 404. 1998 174 0 387. 1998 175 0 460. 1998 176 0 447. 1998 177 0 469. 1998 178 0 447. 1998 179 0 389. 1998 180 0 375. 1998 181 0 354. 1998 182 0 316. 1998 183 0 369. 1998 184 0 410. 1998 185 0 406. 1998 186 0 477. 1998 187 0 583. 1998 188 0 458. 1998 189 0 386. 1998 190 0 342. 1998 191 0 333. 1998 192 0 369. 1998 193 0 406. 1998 194 0 375. 1998 195 0 332. 1998 196 0 310. 1998 197 0 528. 1998 198 0 530. 1998 199 0 387. 1998 200 0 385. 1998 201 0 349. 1998 202 0 409. 1998 203 0 399. 1998 204 0 619. 1998 205 0 658. 1998 206 0 581. 1998 207 0 445. 1998 208 0 370. 1998 209 0 326. 1998 210 0 334. 1998 211 0 384. 1998 212 0 423. 1998 213 0 412. 1998 214 0 404. 1998 215 0 370. 1998 216 0 384. 1998 217 0 383. 1998 218 0 378. 1998 219 0 461. 1998 220 0 460. 1998 221 0 400. 1998 222 0 447. 1998 223 0 373. 1998 224 0 379. 1998 225 0 374. 1998 226 0 374. 1998 227 0 391. 1998 228 0 348. 1998 229 0 303. 1998 230 0 279. 1998 231 0 312. 1998 232 0 331. 1998 233 0 298. 1998 234 0 341. 1998 235 0 493. 1998 236 0 436. 1998 237 0 400. 1998 238 0 633. 1998 239 0 630. 1998 240 0 583. 1998 241 0 547. 1998 242 0 550. 1998 243 0 499. 1998 244 0 444. 1998 245 0 427. 1998 246 0 401.
On Sat, Jan 16, 2021 at 8:01 AM Rui Barradas <ruipbarradas at sapo.pt> wrote:
Hello,
Thanks for the data, it makes things easier.
df1 <- read.table("Jibrin_data.txt", header = TRUE)
#'data.frame': 168 obs. of 4 variables:
# $ year: int 1998 1998 1998 1998 1998 1998 1998 1998 1998 1998 ...
# $ day : int 1 2 3 4 5 6 7 8 9 10 ...
# $ Hr : int 0 0 0 0 0 0 0 0 0 0 ...
# $ SWS : num 344 346 356 332 302 329 395 359 471 392 ...
Here is a simple way of converting the year and day of year columns to a
column of class "Date".
Like others have said, there are also CRAN packages to handle date/time
data, my favorite being package lubridate, but base R can do it.
df1$date <- as.Date(paste(df1$year, df1$day),
format = "%Y %j",
origin = "1998-01-01")
head(df1)
# year day Hr SWS date
#1 1998 1 0 344 1998-01-01
#2 1998 2 0 346 1998-01-02
#3 1998 3 0 356 1998-01-03
#4 1998 4 0 332 1998-01-04
#5 1998 5 0 302 1998-01-05
#6 1998 6 0 329 1998-01-06
Hope this helps,
Rui Barradas
?s 06:48 de 16/01/21, Jibrin Alhassan escreveu:
Hi Barradas
Sorry for the delay. Below is a section of my data. I have up to 1826
covering 1998 to 2002
year day Hr SWS
1998 1 0 344.
1998 2 0 346.
1998 3 0 356.
1998 4 0 332.
1998 5 0 302.
1998 6 0 329.
1998 7 0 395.
1998 8 0 359.
1998 9 0 471.
1998 10 0 392.
1998 11 0 346.
1998 12 0 387.
1998 13 0 393.
1998 14 0 367.
1998 15 0 320.
1998 16 0 309.
1998 17 0 341.
1998 18 0 329.
1998 19 0 322.
1998 20 0 429.
1998 21 0 433.
1998 22 0 398.
1998 23 0 393.
1998 24 0 393.
1998 25 0 423.
1998 26 0 426.
1998 27 0 429.
1998 28 0 386.
1998 29 0 381.
1998 30 0 375.
1998 31 0 365.
1998 32 0 450.
1998 33 0 381.
1998 34 0 316.
1998 35 0 351.
1998 36 0 306.
1998 37 0 312.
1998 38 0 320.
1998 39 0 339.
1998 40 0 395.
1998 41 0 429.
1998 42 0 479.
1998 43 0 495.
1998 44 0 407.
1998 45 0 358.
1998 46 0 360.
1998 47 0 382.
1998 48 0 394.
1998 49 0 393.
1998 50 0 435.
1998 51 0 408.
1998 52 0 360.
1998 53 0 372.
1998 54 0 376.
1998 55 0 379.
1998 56 0 361.
1998 57 0 333.
1998 58 0 321.
1998 59 0 344.
1998 60 0 412.
1998 61 0 428.
1998 62 0 401.
1998 63 0 369.
1998 64 0 343.
1998 65 0 330.
1998 66 0 317.
1998 67 0 296.
1998 68 0 282.
1998 69 0 404.
1998 70 0 530.
1998 71 0 525.
1998 72 0 484.
1998 73 0 430.
1998 74 0 388.
1998 75 0 347.
1998 76 0 337.
1998 77 0 342.
1998 78 0 305.
1998 79 0 329.
1998 80 0 420.
1998 81 0 564.
1998 82 0 483.
1998 83 0 385.
1998 84 0 393.
1998 85 0 437.
1998 86 0 441.
1998 87 0 434.
1998 88 0 471.
1998 89 0 429.
1998 90 0 412.
1998 91 0 370.
1998 92 0 326.
1998 93 0 357.
1998 94 0 338.
1998 95 0 380.
1998 96 0 339.
1998 97 0 312.
1998 98 0 313.
1998 99 0 327.
1998 100 0 362.
1998 101 0 358.
1998 102 0 387.
1998 103 0 397.
1998 104 0 375.
1998 105 0 350.
1998 106 0 357.
1998 107 0 472.
1998 108 0 526.
1998 109 0 396.
1998 110 0 374.
1998 111 0 376.
1998 112 0 355.
1998 113 0 343.
1998 114 0 425.
1998 115 0 426.
1998 116 0 479.
1998 117 0 469.
1998 118 0 425.
1998 119 0 344.
1998 120 0 341.
1998 121 0 426.
1998 122 0 601.
1998 123 0 476.
1998 124 0 670.
1998 125 0 585.
1998 126 0 496.
1998 127 0 479.
1998 128 0 569.
1998 129 0 531.
1998 130 0 489.
1998 131 0 484.
1998 132 0 480.
1998 133 0 393.
1998 134 0 332.
1998 135 0 327.
1998 136 0 493.
1998 137 0 493.
1998 138 0 430.
1998 139 0 396.
1998 140 0 408.
1998 141 0 416.
1998 142 0 376.
1998 143 0 375.
1998 144 0 415.
1998 145 0 407.
1998 146 0 398.
1998 147 0 352.
1998 148 0 349.
1998 149 0 517.
1998 150 0 597.
1998 151 0 480.
1998 152 0 435.
1998 153 0 408.
1998 154 0 441.
1998 155 0 397.
1998 156 0 374.
1998 157 0 413.
1998 158 0 582.
1998 159 0 513.
1998 160 0 459.
1998 161 0 466.
1998 162 0 414.
1998 163 0 354.
1998 164 0 341.
1998 165 0 343.
1998 166 0 369.
1998 167 0 411.
1998 168 0 355.
Thanks
Jibrin
On Fri, Jan 15, 2021 at 7:15 PM Rui Barradas <ruipbarradas at sapo.pt
<mailto:ruipbarradas at sapo.pt>> wrote:
Hello,
No dataset was attached. Like the posting guide says,
No binary attachments except for PS, PDF, and some image and archive
formats (others are automatically stripped off because they can
contain
malicious software). Files in other formats and larger ones should
rather be put on the web and have only their URLs posted. This way a
reader has the option to download them or not.
Can you post sample data? Please post the output of `dput(df)`. Or,
if
it is too big the output of `dput(head(df, 20))`. (`df` is the name
of
your dataset.)
Hope this helps,
Rui Barradas
?s 11:30 de 15/01/21, Jibrin Alhassan escreveu:
> Dear R users,
> I am very new to R software. I have solar wind speed data needed
for my
> work. How do I convert day in the year to year, month, and day
with R
> software? I have used this code
> as.Date(0, origin = "1998-01-01")
> but it can only convert one day of the year at a time. Meanwhile,
I have up
> to the 1998-2002 data set. Attached is my data.
> Kindly help, please.
> Jibrin Alhassan
> ______________________________________________
> R-help at r-project.org <mailto:R-help at r-project.org> mailing list
-- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. >