计算Pandas系列的每个独特值的频率计数
让我们看看如何找到Pandas系列中每个独特值的频率计数。我们将使用这些方法来计算Pandas系列中每个独特值的频率计数。
使用values_counts()来计算唯一值的频率
在这里,values_counts()函数被用来查找Pandas系列中唯一值的频率。
例子1:这里我们创建了一个系列,然后在values_counts()函数的帮助下,我们计算了唯一值的频率。
# importing the module
import pandas as pd
# creating the series
s = pd.Series(data = [2, 3, 4, 5, 5, 6,
7, 8, 9, 5, 3])
# displaying the series
print(s)
# finding the unique count
print(s.value_counts())
输出 :
计算每个独特值的频率计数
例子2 :这里我们是随机生成整数值,然后最后计算每个值的计数。
# importing the module
import pandas as pd
# creating the series
s = pd.Series(np.take(list('0123456789'),
np.random.randint(10, size = 40)))
# finding the unique count
s.value_counts()
# displaying the series
print(s)
输出 :
计算每个独特值的频率计数
例子3 :这里我们有一个系列,每个值都是一个字符串,我们要计算系列中每个元素的出现次数。
# importing pandas as pd
import pandas as pd
# creating the Series
sr = pd.Series(['Mumbai', 'Pune', 'Agra', 'Pune',
'Goa', 'Shimla', 'Goa', 'Pune'])
# finding the unique count
sr.value_counts()
# displaying the series
print(sr)
输出 :
计算每个独特值的频率计数
使用groupby()来计算唯一值的频率
这里我们使用groupby()函数将所有相同的数值分组,然后计算它们的频率。
import pandas as pd
technologies = {
"data":[2, 3, 4, 5, 5, 6,
7, 8, 9, 5, 3]
}
df = pd.DataFrame(technologies)
df['frequency'] = df.groupby('data')
['data'].transform('count')
print(df)
输出:
计算每个独特值的频率计数
使用apply().fillna()函数来计算唯一值的频率
在这里,我们为系列中的无值填充NAN或0,并应用函数来应用相同的,然后计算它们的频率。
import pandas as pd
technologies = {
"data":[2, 3, 4, 5, 5, 6,
7, 8, 9, 5, 3]
}
df = pd.DataFrame(technologies)
df1 = df.apply(pd.value_counts).fillna(0)
print(df1)
输出:
计算每个独特值的频率计数