返回满足 R 中多个条件的数据框行(面板数据随机样本)
我希望根据唯一 ID 从面板数据创建随机样本。
例如,如果您从以下内容开始:
e = data.frame(id=c(1,1,1,2,2,3,3,3,4,4,4,4), data=c(23,34,45,1,23,45,6,2,9,39,21,1))
并且您想要 2 个唯一 id 的随机样本:
out = data.frame(id=c(1,1,1,3,3,3), data=c(23,34,45,45,6,2))
虽然样本为我提供了随机唯一 id,
sample( e$id ,2) # give c(1,3)
但我无法弄清楚如何使用逻辑调用来返回所有所需的数据。 我尝试过很多事情,包括:
e[ e$id == sample( e$id ,2) ] # only returns 1/2 the data
有什么想法吗???它杀了我。
I am hoping to create a random sample from panel data based on the unique id.
For instance if you start with:
e = data.frame(id=c(1,1,1,2,2,3,3,3,4,4,4,4), data=c(23,34,45,1,23,45,6,2,9,39,21,1))
And you want a random sample of 2 unique ids:
out = data.frame(id=c(1,1,1,3,3,3), data=c(23,34,45,45,6,2))
Although sample gives me random unique ids
sample( e$id ,2) # give c(1,3)
I can't figure out how to use logical calls to return all the desired data.
I have tried a number of things including:
e[ e$id == sample( e$id ,2) ] # only returns 1/2 the data
Any ideas??? Its killing me.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我不完全确定您的预期结果应该是什么,但这对您想要做的事情有用吗?
或者也许你想要这个:
I'm not entirely sure what your expected result should be, but does this work for what you're trying to do?
Or maybe you want this: