【发布时间】:2016-11-01 15:33:38
【问题描述】:
我正在处理一个包含 300 万行和 1,200 个“组”的数据集 - 我们称它们为姓氏。
数据集如下所示:
LastName FirstName
Smith Rachael
Smith John
Smith Rachael
Johnson Bob
Johnson Laura
Johnson Laura
我想分别查看每个姓氏,并对每个姓氏中的名字做一些事情。例如,我可能想找出在 Smith 的姓氏中哪个名字最普遍,然后将其添加为自己的列(但实际上它比这复杂得多)。我需要保持所有行的完整性(换句话说,我需要保持每个 Smith 和每个 Johnson)。
LastName FirstName HighestFreq
Smith Rachael Rachael
Smith John Rachael
Smith Rachael Rachael
Johnson Bob Laura
Johnson Laura Laura
Johnson Laura Laura
我不知道最好的方法是将数据集拆分为 1,200 个数据集,然后在最后重新合并或执行某种循环。我对 Python 很陌生,无法弄清楚如何正确地做到这一点。我已经找到了查看各个行所需的代码,现在如何一次只查看一个姓氏。
另外,如果子集是最好的方法,我需要循环命名集合,因为我显然不会手动命名 1,200 个数据集。
感谢阅读。
【问题讨论】:
-
我认为您不需要创建 1,200 个数据集,但为什么不需要。按感兴趣的类别对原始数据集进行排序始终是一个好的开始(如果您的数据集太大而无法保存在内存中,这可能并非易事)。排序后,您很可能会在变量中保存一个类别的所有计数。