我有以下数据集:10分钟实例取自显示给定时间站内自行车数量的馈送。我的目标是要找出从一个时间的值差到下一个每个station_id
循环显示连续列之间的值差异
> dim(sample) [1] 6 73 > sample station_id 2014-08-18 20:00:00 2014-08-18 20:10:00 2014-08-18 20:20:00 1 1 1 0 0 2 2 18 18 19 3 3 5 4 4 4 4 21 20 20 5 5 9 10 8 6 6 9 9 9 2014-08-18 20:30:00 2014-08-18 20:40:00 2014-08-18 20:50:00 2014-08-18 21:00:00 1 2 1 1 0 2 18 18 21 22 3 4 4 4 4 4 21 22 25 23 5 5 7 3 0 6 9 9 9 9 2014-08-18 21:10:00 2014-08-18 21:20:00 2014-08-18 21:30:00 2014-08-18 21:40:00 1 0 4 2 1 2 21 22 22 21 3 4 6 3 3 4 25 24 24 24 5 0 0 0 0 6 9 9 10 10 2014-08-18 21:50:00 2014-08-18 22:00:00 2014-08-18 22:10:00 2014-08-18 22:20:00 1 3 2 3 2 2 21 22 18 16 3 4 5 6 4 4 25 22 21 21 5 4 0 0 3 6 10 10 11 11 2014-08-18 22:30:00 2014-08-18 22:40:00 2014-08-18 22:50:00 2014-08-18 23:00:00 1 2 3 8 11 2 15 14 16 17 3 4 4 4 4 4 23 21 20 20 5 0 1 0 0 6 11 12 12 12 2014-08-18 23:10:00 2014-08-18 23:20:00 2014-08-18 23:30:00 2014-08-18 23:40:00 1 11 13 14 15 2 17 15 10 3 3 5 5 5 4 4 22 19 19 17 5 1 0 2 3 6 12 12 12 12 2014-08-18 23:50:00 2014-08-19 00:00:00 2014-08-19 00:10:00 2014-08-19 00:20:00 1 16 16 17 19 2 2 2 2 1 3 5 6 5 5 4 18 19 19 20 5 3 0 2 6 6 12 12 12 12 2014-08-19 00:30:00 2014-08-19 00:40:00 2014-08-19 00:50:00 2014-08-19 01:00:00 1 20 21 22 23 2 1 4 3 3 3 3 3 3 3 4 20 19 20 19 5 0 1 2 5 6 12 12 12 12 2014-08-19 01:10:00 2014-08-19 01:20:00 2014-08-19 01:30:00 2014-08-19 01:40:00 1 22 23 23 21 2 3 4 4 4 3 4 4 4 4 4 21 24 23 24 5 0 3 2 1 6 12 12 12 12 2014-08-19 01:50:00 2014-08-19 02:00:00 2014-08-19 02:10:00 2014-08-19 02:20:00 1 22 23 22 22 2 3 1 1 1 3 4 4 4 4 4 24 22 21 22 5 0 1 2 2 6 12 12 12 12 2014-08-19 02:30:00 2014-08-19 02:40:00 2014-08-19 02:50:00 2014-08-19 03:00:00 1 20 22 22 22 2 1 1 1 1 3 4 4 4 4 4 22 24 24 23 5 2 3 3 3 6 12 12 12 12 2014-08-19 03:10:00 2014-08-19 03:20:00 2014-08-19 03:30:00 2014-08-19 03:40:00 1 22 22 21 21 2 1 1 1 1 3 4 4 4 4 4 23 23 23 22 5 4 3 3 3 6 12 12 12 12 2014-08-19 03:50:00 2014-08-19 04:00:00 2014-08-19 04:10:00 2014-08-19 04:20:00 1 21 21 21 21 2 1 1 1 1 3 4 4 4 4 4 22 22 23 23 5 2 3 3 3 6 12 12 12 12 2014-08-19 04:30:00 2014-08-19 04:40:00 2014-08-19 04:50:00 2014-08-19 05:00:00 1 21 21 21 21 2 1 1 1 1 3 4 4 4 4 4 23 23 23 23 5 5 4 4 4 6 12 12 12 12 2014-08-19 05:10:00 2014-08-19 05:20:00 2014-08-19 05:30:00 2014-08-19 05:40:00 1 21 21 21 21 2 1 1 1 1 3 4 4 4 4 4 24 24 24 24 5 4 4 4 4 6 12 12 12 12 2014-08-19 05:50:00 2014-08-19 06:00:00 2014-08-19 06:10:00 2014-08-19 06:20:00 1 21 21 21 22 2 1 1 1 1 3 4 4 4 4 4 24 24 24 24 5 4 4 4 3 6 12 12 12 12 2014-08-19 06:30:00 2014-08-19 06:40:00 2014-08-19 06:50:00 2014-08-19 07:00:00 1 22 22 22 22 2 1 1 1 1 3 5 5 5 5 4 24 24 24 24 5 3 4 4 4 6 12 12 12 12 2014-08-19 07:10:00 2014-08-19 07:20:00 2014-08-19 07:30:00 2014-08-19 07:40:00 1 22 22 22 22 2 6 5 5 5 3 5 5 5 5 4 24 24 24 24 5 4 4 4 4 6 12 12 12 12 2014-08-19 07:50:00 1 22 2 5 3 5 4 24 5 4 6 12
最后出来放应该是这个样子(当然,列 实际数量自然会73,但是放入这个例子太多了)。
> reshape2 station_id 2014-08-18 20:00:00 2014-08-18 20:10:00 2014-08-18 20:20:00 1 1 1 -1 0 2 2 18 0 1 3 3 5 -1 0 4 4 21 -1 0 5 5 9 1 -2 6 6 9 0 0 2014-08-18 20:30:00 2014-08-18 20:40:00 1 2 -1 2 -1 0 3 0 0 4 1 1 5 -3 2 6 0 0
如何循环遍历R中的所有列?
下面是数据
> dput(sample) structure(list(station_id = 1:6, `2014-08-18 20:00:00` = c(1L, 18L, 5L, 21L, 9L, 9L), `2014-08-18 20:10:00` = c(0L, 18L, 4L, 20L, 10L, 9L), `2014-08-18 20:20:00` = c(0L, 19L, 4L, 20L, 8L, 9L), `2014-08-18 20:30:00` = c(2L, 18L, 4L, 21L, 5L, 9L), `2014-08-18 20:40:00` = c(1L, 18L, 4L, 22L, 7L, 9L), `2014-08-18 20:50:00` = c(1L, 21L, 4L, 25L, 3L, 9L), `2014-08-18 21:00:00` = c(0L, 22L, 4L, 23L, 0L, 9L)), .Names = c("station_id", "2014-08-18 20:00:00", "2014-08-18 20:10:00", "2014-08-18 20:20:00", "2014-08-18 20:30:00", "2014-08-18 20:40:00", "2014-08-18 20:50:00", "2014-08-18 21:00:00"), row.names = c(NA, 6L), class = "data.frame")
请考虑在读了[问]以及如何生成[可重现的示例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。请尽量让您的示例尽可能少且易于导入。此外,尝试展示一些你自己的尝试来解决这个问题。你有什么尝试?为什么它不起作用? – Heroka
我已经包含上述数据的样本 –
谢谢!现在,你是否也可以根据这个输入包含所需的输出,并且你自己试图解决这个问题? – Heroka