使用 Pandas 计算每个组的唯一值
使用表格数据时,通常需要计算特定值中的唯一出现次数组。要使用 Pandas 库在 Python 中实现此目的,我们可以利用 groupby() 和 nunique() 方法。
问题说明:
为了说明问题,请考虑以下数据集:
ID | domain |
---|---|
123 | vk.com |
123 | vk.com |
123 | twitter.com |
456 | vk.com' |
456 | facebook.com |
456 | vk.com |
456 | google.com |
789 | twitter.com |
789 | vk.com |
当前的任务是计算每个域内的唯一 ID 值。
解决方案:
进行计数每组都有唯一值,我们可以使用以下代码:
<code class="python">df = df.groupby('domain')['ID'].nunique()</code>
groupby() 方法按域列对数据进行分组,而 nunique() 方法计算每个组中 ID 的唯一出现次数。输出是一个系列,其中域名作为索引,相应的唯一计数作为值。
domain vk.com 3 twitter.com 2 facebook.com 1 google.com 1
附加说明:
字符串操作示例:
<code class="python">df['clean_domain'] = df.domain.str.strip("'") df = df.groupby('clean_domain')['ID'].nunique()</code>
agg() 示例:
<code class="python">df = df.groupby(by='domain', as_index=False).agg({'ID': pd.Series.nunique})</code>
以上是如何使用 Pandas 计算每个组的唯一值?的详细内容。更多信息请关注PHP中文网其他相关文章!