一般に、単一の列で個別の値をカウントするには、次を使用できますSeries.value_counts
。
df.domain.value_counts()
#'vk.com' 5
#'twitter.com' 2
#'facebook.com' 1
#'google.com' 1
#Name: domain, dtype: int64
列内の一意の値の数を確認するには、次を使用しますSeries.nunique
。
df.domain.nunique()
# 4
これらすべての個別の値を取得するには、unique
orを使用できますdrop_duplicates
。2 つの関数のわずかな違いは、 a を返し、 unique
anumpy.array
をdrop_duplicates
返すことpandas.Series
です。
df.domain.unique()
# array(["'vk.com'", "'twitter.com'", "'facebook.com'", "'google.com'"], dtype=object)
df.domain.drop_duplicates()
#0 'vk.com'
#2 'twitter.com'
#4 'facebook.com'
#6 'google.com'
#Name: domain, dtype: object
この特定の問題に関しては、別の変数に関して個別の値をカウントしたいので、groupby
ここで他の回答によって提供される方法に加えて、最初に重複を削除してから実行することもできますvalue_counts()
:
import pandas as pd
df.drop_duplicates().domain.value_counts()
# 'vk.com' 3
# 'twitter.com' 2
# 'facebook.com' 1
# 'google.com' 1
# Name: domain, dtype: int64