发布于2024-11-26 22:27 阅读(579) 评论(0) 点赞(20) 收藏(4)
我正在研究一个用例,我需要从数据框中检索最少的行样本,该数据框包含所有列中找到的每个唯一值至少一行。
一个简化的例子可能是:
ID | 一个 | 乙 | 碳 |
---|---|---|---|
1 | 德 | 格 | 十 |
2 | 德 | 格 | 和 |
3 | 和 | 格 | 和 |
4 | 和 | 赫 | 和 |
5 | F | 我 | 和 |
在这里,我想保留 ID 为 1、4 和 5 的行,以便至少有一行包含来自 A 的值 D、E 和 F;来自 B 的值 G、H 和 I 以及来自 C 的值 X、Y 和 Z。我不需要有所有组合,只需要有每一列的所有唯一值:
ID | 一个 | 乙 | 碳 |
---|---|---|---|
1 | 德 | 格 | 十 |
4 | 和 | 赫 | 和 |
5 | F | 我 | 和 |
有什么有效的方法可以做到这一点?
谢谢
以下是我最终的选择:
由于我只是在每一步中最小化行数,因此远非最佳解决方案,但它非常高效,可以完成工作。可能可以使用递归算法来测试所有解决方案,但我对最终的行集没有太大要求,除非它需要所有可能的值。
感谢大家的意见,他们帮助我找到了这个解决方案。
作者:黑洞官方问答小能手
链接:https://www.pythonheidong.com/blog/article/2046122/406783d6ac707101a387/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!