R中数据帧中间隔的最大值

Max value in intervals in dataframe in R

我有日期时间、功率高度 (10MB) 的数据。 示例:

date<-c("9-1-2020","10-1-2020","11-12-2020","12-1-2020")
height<-c(32.2,32.3,48,35.2)
power<-(9,10,14,15)
data<-cbind(date, height, power)

我希望高度间隔在 48 分之 32 之间,步长为 0.3。 对于每个间隔,我想计算功率的最大值。

我有高度示例 [30.2,30.4] 的区间。该间隔的最大幂为 10。在新数据框中,我想为列高保存 30.3,为列幂保存 10。

你需要这样的东西吗?

transform(
  out <- data.frame(height = seq(32, 48, 0.3)),
  power = data$power[order(data$height)][as.integer(cut(height, sort(c(30, data$height))))]
)

这给出了

   height power
1    32.0     9
2    32.3    10
3    32.6    15
4    32.9    15
5    33.2    15
6    33.5    15
7    33.8    15
8    34.1    15
9    34.4    15
10   34.7    15
11   35.0    15
12   35.3    14
13   35.6    14
14   35.9    14
15   36.2    14
16   36.5    14
17   36.8    14
18   37.1    14
19   37.4    14
20   37.7    14
21   38.0    14
22   38.3    14
23   38.6    14
24   38.9    14
25   39.2    14
26   39.5    14
27   39.8    14
28   40.1    14
29   40.4    14
30   40.7    14
31   41.0    14
32   41.3    14
33   41.6    14
34   41.9    14
35   42.2    14
36   42.5    14
37   42.8    14
38   43.1    14
39   43.4    14
40   43.7    14
41   44.0    14
42   44.3    14
43   44.6    14
44   44.9    14
45   45.2    14
46   45.5    14
47   45.8    14
48   46.1    14
49   46.4    14
50   46.7    14
51   47.0    14
52   47.3    14
53   47.6    14
54   47.9    14