Dataframe 选择分组数据帧中每个组的第n个元素

Dataframe 选择分组数据帧中每个组的第n个元素,dataframe,julia,Dataframe,Julia,假设我创建以下数据帧 using DataFrames df = DataFrame(A = rand(500), B = repeat(1:10, inner=50), C = 1:500) 我可以做一个groupby: grouped_df = groupby(df,"B") 我将以10个小组结束。比如说,我如何选择每个组的第三个元素,并将它们组合成一个新的数据帧?也就是说,我想要一个10行的新数据帧,每行是每个组的第三个元素 我查看了合并,但找不到解决方案。我能得到

假设我创建以下数据帧

using DataFrames
df = DataFrame(A = rand(500), B = repeat(1:10, inner=50), C = 1:500)
我可以做一个
groupby

grouped_df = groupby(df,"B")
我将以10个小组结束。比如说,我如何选择每个组的第三个元素,并将它们组合成一个新的数据帧?也就是说,我想要一个10行的新数据帧,每行是每个组的第三个元素


我查看了
合并
,但找不到解决方案。我能得到提示吗?

要从每个组中获取第三行,请先使用索引将
groupby
组合起来:

julia> combine(groupby(df, :B), x->x[3, :])
10×3 DataFrame
 Row │ B      A          C
     │ Int64  Float64    Int64
─────┼─────────────────────────
   1 │     1  0.196572       3
   2 │     2  0.539942      53
   3 │     3  0.243455     103
   4 │     4  0.837491     153
   5 │     5  0.672861     203
   6 │     6  0.0220219    253
   7 │     7  0.303417     303
   8 │     8  0.409596     353
   9 │     9  0.165928     403
  10 │    10  0.752038     453

(我最初误读了这个问题,建议使用逻辑索引,比如
df[df.B.==3,:]

你基本上得到了第三组。然而,我想得到每个组的第三个元素。啊,我误解了,但也许我的编辑也不对?你想要50排?你说得对。非常感谢。