如果我做

mt = mobile.PattLen.value_counts()   # sort True by default

我懂了
4    2831
3    2555
5    1561
[...]

如果我做
mt = mobile.PattLen.value_counts(sort=False)

我懂了
8    225
9    120
2   1234
[...]

我想做的就是以2、3、4升序(左侧数字列)获得输出。我可以以某种方式更改value_counts还是需要使用其他函数。

最佳答案

我认为您需要 sort_index ,因为左列称为index。完整的命令将是mt = mobile.PattLen.value_counts().sort_index()。例如:

mobile = pd.DataFrame({'PattLen':[1,1,2,6,6,7,7,7,7,8]})
print (mobile)
   PattLen
0        1
1        1
2        2
3        6
4        6
5        7
6        7
7        7
8        7
9        8

print (mobile.PattLen.value_counts())
7    4
6    2
1    2
8    1
2    1
Name: PattLen, dtype: int64


mt = mobile.PattLen.value_counts().sort_index()
print (mt)
1    2
2    1
6    2
7    4
8    1
Name: PattLen, dtype: int64

关于python - 更改value_counts中的排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43855474/

10-12 19:01