例如,我的df是{'a','a','a','b'}。我想将其转换为{0.75,0.75,0.75,0.25}。它基本上是水平计数和总观测数之比。我的变量有46个级别。有办法循环吗?
答案 0 :(得分:2)
假设我有一个系列s
s = pd.Series(list('aaab'))
s
0 a
1 a
2 a
3 b
dtype: object
然后将pd.value_counts
与normalize
参数一起使用并映射结果
s.map(s.value_counts(normalize=True))
0 0.75
1 0.75
2 0.75
3 0.25
dtype: float64