我想将数据框从宽格式转换为长格式。但是,我有一个日期列,当我与dcast绑定时,它复制了我的日期列。结果是带有多个NA的行和重复的Date行。
这是我的数据
ID Date Type variable
264 2018-05-25 Xylem -63.06
308 2018-05-27 Xylem -67.22
357 2018-05-31 Leaves -23.31
405 2018-06-02 Xylem -65.40
434 2018-06-04 Xylem -70.05
435 2018-06-04 Leaves -34.48
436 2018-06-04 Phloem -71.03
437 2018-06-02 Leaves -32.86
467 2018-06-06 Xylem -59.86
468 2018-06-06 Phloem -64.69
我尝试了以下代码:
data_wide<- dcast(df, Date + ID ~ Type, value.var=c("variable"))
返回:
Date ID Leaves Phloem Xylem
19 2018-05-31 357 -23.31 NA NA
20 2018-06-02 405 NA NA -65.40
21 2018-06-02 437 -32.86 NA NA
22 2018-06-04 434 NA NA -70.05
23 2018-06-04 435 -34.48 NA NA
24 2018-06-04 436 NA -71.03 NA
25 2018-06-06 467 NA NA -59.86
26 2018-06-06 468 NA -64.69 NA
27 2018-06-06 469 -27.10 NA NA
28 2018-06-08 478 NA NA -54.82
29 2018-06-08 479 NA -59.01 NA
30 2018-06-08 480 -33.80 NA NA
31 2018-06-10 514 NA NA -59.89
32 2018-06-10 515 NA -62.83 NA
33 2018-06-10 516 -31.11 NA NA
34 2018-06-14 572 NA NA -69.44
35 2018-06-14 573 NA -74.24 NA
36 2018-06-14 574 -27.29 NA NA
我想要它,没有重复的日期和值在同一行中。
Date ID Leaves Phloem Xylem
19 2018-05-31 357 -23.31 NA NA
20 2018-06-02 405 -32.86 NA -65.40
22 2018-06-04 434 -34.48 -71.03 -70.05
25 2018-06-06 467 -27.10 -64.69 -59.86
28 2018-06-08 478 -33.80 -59.01 -54.82
31 2018-06-10 514 -31.11 -62.83 -59.89
34 2018-06-14 572 -27.29 -74.24 -69.44
我虽然是导致问题的“ ID”列,但这是有道理的。但是,如果我删除它,代码将无法正常工作。...
data_wide<- dcast(df, Date + ID ~ Type, value.var=c("variable"))
我想要一列包含日期且没有重复值的