我已经看到了herehere关于如何返回第n行的信息。但我的问题不同。文件中的单独一列提供了有关返回第n个元素的详细信息。根据组的不同而有所不同。这是数据集的示例,其中Nth列提供要返回的行。也就是说,对于每第3行Ida和每第4行Idb。数据相当可观,其中包含几个Id组。

Id  TagNo   Nth
a   A-A-3   3
a   A-A-1   3
a   A-A-5   3
a   A-A-2   3
a   AX-45   3
a   AX-33   3
b   B-B-5   4
b   B-B-4   4
b   B-B-3   4
b   BX-B2   4

所需的输出:
Id  TagNo   Nth
 a  A-A-3   3
 a  A-A-2   3
 b  B-B-5   4

感谢您的帮助。

编辑:请注意,我要从first和每个第n个项目开始选择;这是a的第3位,而b的第4位。对于组a,它将是1st,4th, 7th ...对于组b,它将是1st,5th, 9th行。原始输出有错误,并且已完成编辑。诚挚的歉意。

最佳答案

基本R解决方案:

do.call(rbind, lapply(split(df, df$Id), function(x) x[seq(from = 1, to = nrow(x), by = unique(x$Nth)), ]))

    Id TagNo Nth
a.1  a A-A-3   3
a.4  a A-A-2   3
b    b B-B-5   4

关于python - 从具有组的文件中获取第n行,并且n是列中的给定值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46784727/

10-11 19:45