Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中进行计算后如何合并数据帧的行_R_Dataframe - Fatal编程技术网

在R中进行计算后如何合并数据帧的行

在R中进行计算后如何合并数据帧的行,r,dataframe,R,Dataframe,我将如何从第5行中减去第1行中的Read,并将其作为第1行中Read的值。然后重复,从第6行减去第2行中的读数,依此类推?然后将每组4行(相同的时间戳)相加,并用该时间戳(即所有四行的总和)生成一行 Time Meter Read 1 2017-03-20 14:15:00 1 22582640 2 2017-03-20 14:15:00 2 571893 3 2017-03-20 14:15:00 3 4590

我将如何从第5行中减去第1行中的Read,并将其作为第1行中Read的值。然后重复,从第6行减去第2行中的读数,依此类推?然后将每组4行(相同的时间戳)相加,并用该时间戳(即所有四行的总和)生成一行

                  Time Meter     Read
1   2017-03-20 14:15:00     1 22582640
2   2017-03-20 14:15:00     2   571893
3   2017-03-20 14:15:00     3 45906886
4   2017-03-20 14:15:00     4  1890581
5   2017-03-20 14:20:00     1 22582640
6   2017-03-20 14:20:00     2   571893
7   2017-03-20 14:20:00     3 45906993
8   2017-03-20 14:20:00     4  1890581
9   2017-03-20 14:25:00     1 22582640
10  2017-03-20 14:25:00     2   571893
11  2017-03-20 14:25:00     3 45907206
12  2017-03-20 14:25:00     4  1890581
13  2017-03-20 14:30:00     1 22582640
14  2017-03-20 14:30:00     2   571893
15  2017-03-20 14:30:00     3 45907206
16  2017-03-20 14:30:00     4  1890581
数据的dput是:

structure(list(Time = structure(c(1490037300, 1490037300, 1490037300, 
1490037300, 1490037600, 1490037600, 1490037600, 1490037600, 1490037900, 
1490037900, 1490037900, 1490037900, 1490038200, 1490038200, 1490038200, 
1490038200), class = c("POSIXct", "POSIXt"), tzone = ""), Meter = c(1, 
2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4), Read = c(22582640L, 
571893L, 45906886L, 1890581L, 22582640L, 571893L, 45906993L, 
1890581L, 22582640L, 571893L, 45907206L, 1890581L, 22582640L, 
571893L, 45907206L, 1890581L)), .Names = c("Time", "Meter", "Read"
), row.names = c(NA, 16L), class = "data.frame")
我想要的结果是:

1   2017-03-20 14:15:00     1 107
2   2017-03-20 14:20:00     1 213
等等


我不需要参考米栏,如果这使它不那么复杂。我可以删除该列,只需进行某种偏移,因为格式将始终是4个条目的组合。到目前为止,我已将数据格式化,但我不知道从何处开始执行我正在寻找的操作,因为这意味着删除三行,我不确定这会如何影响后续计算的偏移量。我想在计算中添加一个新的列,但仍然不知道如何将总和滚动到一行。

我看不出结果107是如何构造的(第1、5、9和13行中的值都是相同的)。对,这是5和1、6和2、7和3之间的差异,8和4加在一起,得到一个数字作为第一时间戳。第一组4人和第二组4人的唯一区别是米3。这就是107号的来源。你想要最后一张时间戳做什么?第13-16行没有任何可减去的内容,所以答案是
NA
、省略还是其他什么?
m