【发布时间】:2019-04-04 09:11:04
【问题描述】:
我有一个数据帧 df,我想在 R 中创建一个函数,它返回给定输入数字的数据帧的 10 个条目的范围。那就是:
If input number is equal to 1, the function returns df[1:10,]
If input number is equal to 2, the function returns df[11:20,]
If input number is equal to 3, the function returns df[21:30,]
...
就像页面一样:第 1 页显示十个条目,第 2 页显示接下来的十个条目,依此类推。
注意:
如果没有更多的“十个条目”要返回,该函数应该返回数据帧中剩下的所有内容
数据帧的长度不固定(即函数要求使用 df 并返回“页面”)。
它看起来很容易实现,但我不知道如何以正确和快速的方式实现它。
编辑
我的意思是返回行而不是列,抱歉。刚刚编辑。但是@Freakazoid 解决方案或多或少起到了作用,只需将 ncol 更改为 nrow (请参阅下面的解决方案)
【问题讨论】:
-
如果您使用
dput(data)提供数据样本会更有帮助 -
如果数据框有 40 行并且要求显示第 7 页怎么办?在这种情况下,输出会是什么?
-
正如您的语法所暗示的那样,您很可能想要选择行而不是列。但是,请考虑下限为
1+(x-1)*10,上限为10*x(x是输入数字)。 -
请对答案提供一些反馈。有什么帮助还是你有更多的问题?谢谢!
-
感谢您的所有反馈。事实上,正如我在编辑过的问题中提到的那样,@Freakazoid 通过一些修改完美地完成了这个技巧,以使其适应行而不是列(我在最初的问题中的错误)。谢谢!