我觉得我在风口浪尖上,但不能完全到达那里!
我有一个dataframe,其中一列是double。我想扩展这些值,以包括0.001值之间的所有值。例如,如果这是我的输入,values = c(0.086,0.092, 0.099, 0.080,0.092, 1.02) sess = c(1, 1,1, 2, 2,2) phase = c(1,2,3,2,1,5) df = data.frame(values, sess, phase)
我希望输出看起来像这样,其中每个会话的最小值和最大值之间存在值,表示为0.001水平,同时会话列用适当的值填充。
output sess phase
0.086 1 1
0.087 1
0.088 1
0.089 1
0.090 1
0.091 1
0.092 1 2
0.093 1
0.094 1
0.095 1
0.096 1
0.097 1
0.098 1
0.099 1 3
0.080 2 2
0.081 2
0.082 2
0.083 2
0.084 2
0.085 2
0.086 2
0.087 2
0.088 2
0.089 2
0.090 2
0.091 2
0.092 2 1
0.093 2
0.094 2
0.095 2
0.096 2
0.097 2
0.098 2
0.099 2
0.100 2
0.101 2
0.102 2 5
0.103 2
0.104 2
我可以使用“seq”来创建这个列,但是将它添加到现有的嵌套框架会给我带来麻烦。我觉得“加入”可能是合适的,但我不能完全得到它。
1条答案
按热度按时间aurhwmvo1#
如果你
group_by
每个sess
,那么你可以reframe
,这样你的output
列就是seq
,在每个组中values
的min
最大值和max
最大值之间。