我有这样的数据:
Name= letters[1:5]
Amount <- c(1, 4, 9, 2, 0)
df <- data.frame(Name, Amount)
问题是,我必须打印一个连续的名称,它的名称后面的值比前面的名字大。例如,在我的数据帧df中
(a,b)为1&4 -> 4-1=3
(b,c)为4&9 -> 9-4=5 (正确答案)
(c,d)是9&2 -> 9-2=-7
(d,e)为2&0 -> 2-0=2
所以答案是:b c
我尝试过像as.data.frame(table(df))和count()这样的方法来提取所需的值,但是它没有起作用。
发布于 2022-11-23 12:45:25
你想要diff和which.max。
with(df, Name[which.max(diff(Amount)) + 0:1])
#> [1] "b" "c"https://stackoverflow.com/questions/74546885
复制相似问题