programing

정렬 값 변경_

sourcejob 2023. 10. 16. 21:48
반응형

정렬 값 변경_

하게되면

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를 어떻게든 변경할 수 있습니까 아니면 다른 기능을 사용해야 합니까?

필요하신 것 같아요, 왜냐하면 왼쪽 칸이.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

이즈라엘의 대답 아래 노르만리우스의 논평에서 암시된 바와 같이:

>>> df = pd.DataFrame({"a":[1,1,2,6,6,7,7,7,7,8]})
>>> df.a.value_counts()[df.a.unique()]
1    2
2    1
6    2
7    4
8    1
Name: a, dtype: int64

사용자 정의 인덱스를 명시적으로 제공하여 어떤 순서로 정렬할 수 있습니다.

>>> df.a.value_counts()[[8,7,6,2,1]]
8    1
7    4
6    2
2    1
1    2
Name: a, dtype: int64
>>> df.a.value_counts()[[1,8,6,2,7]]
1    2
8    1
6    2
2    1
7    4
Name: a, dtype: int64

범주형 데이터를 표시할 때 특히 중요합니다.

>>> df.a.value_counts()[['hourly','daily','weekly','monthly']].plot(type="bar")

일화적으로 일부 항목을 제거하거나 다른 항목을 여러 번 표시하는 데 사용할 수 있습니다.

>>> df.a.value_counts()[[1,1,1,8]]
1    2
1    2
1    2
8    1
Name: a, dtype: int64

가장 큰 수평 막대에서 가장 작은 수평 막대를 사용하려면 sort_value를 사용합니다.

 df['education'].value_counts().sort_values().plot.barh()
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# load the 'tips' dataset from seaborn
tips_data = sns.load_dataset('tips')
tips_data['size'].value_counts().**sort_index(0)**

언급URL : https://stackoverflow.com/questions/43855474/changing-sort-in-value-counts

반응형