Home >Backend Development >Python Tutorial >How to Count Distinct Values Grouped by Domain in Pandas?

How to Count Distinct Values Grouped by Domain in Pandas?

DDD
DDDOriginal
2024-10-18 15:51:03563browse

How to Count Distinct Values Grouped by Domain in Pandas?

Counting Distinct Values Grouped by Domain in Pandas

To determine the unique user IDs within each domain, you can utilize Pandas' nunique() function. This function counts the number of distinct values in a specified column grouped by one or more other columns.

In your case, you can group the data by domain and use nunique() to count the unique values in the ID column:

<code class="python">df.groupby('domain')['ID'].nunique()</code>

This will produce a DataFrame with the domains as the index and the count of unique IDs for each domain as the values:

domain count
vk.com 3
twitter.com 2
facebook.com 1
google.com 1

If your domain values have leading or trailing single quotes ('), you can remove them before grouping using the str.strip("'") method:

<code class="python">df.groupby(df.domain.str.strip("'"))['ID'].nunique()</code>

Alternatively, you can retain the domain column name in the output DataFrame by using the agg() function with as_index=False:

<code class="python">df.groupby(by='domain', as_index=False).agg({'ID': pd.Series.nunique})</code>

This approach returns a DataFrame with the domain column and a new column named ID that contains the counts of unique IDs for each domain.

The above is the detailed content of How to Count Distinct Values Grouped by Domain in Pandas?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn