我从mysql数据库获得了一个如下所示的数据框:
:
有没有办法将行合并为列?看起来像这样:
value date
sensor1 3 8:25
sensor2 5 8:25
sensor1 4 9:01
sensor2 8 9:01
原始数据如下所示:
date sensor1 sensor2
8:25 3 5
9:01 4 8
我需要采取哪些步骤?喜欢把日期分成几分钟?
我试图使用:
Sensor Value Date
1 iphone/uRn0CzNe/lighting 3 2015-10-21 08:25:09
2 iphone/uRn0CzNe/lightS 0.360748 2015-10-21 08:25:11
3 iphone/uRn0CzNe/lighting 3 2015-10-21 08:57:23
4 iphone/uRn0CzNe/lightS 0.732653 2015-10-21 08:57:23
5 iphone/uRn0CzNe/lighting 3 2015-10-21 11:32:00
6 iphone/uRn0CzNe/lightS 0.943316 2015-10-21 11:32:00
7 iphone/uRn0CzNe/lighting 3 2015-10-21 13:27:28
8 iphone/uRn0CzNe/lightS 0.869136 2015-10-21 13:27:28
9 iphone/uRn0CzNe/lighting 3 2015-10-21 13:56:10
10 iphone/uRn0CzNe/lightS 0.982124 2015-10-21 13:56:10
但是这导致了一个表格,其中许多日期不再显示:
> data %>%
+ group_by(Sensor) %>%
+ spread(Date, Value)
答案 0 :(得分:1)
d <- read.table(header=TRUE, text=
's value date
sensor1 3 8:25
sensor2 5 8:25
sensor1 4 9:01
sensor2 8 9:01')
xtabs(value~date+s, data=d)