수색…
소개
범주 는 판다 (pandas) 데이터 형식으로 통계의 범주 형 변수에 해당합니다. 변수는 제한된 수의 일반적으로 고정 된 수의 가능한 값 (범주, R 수준) 만 사용할 수 있습니다. 예를 들면 성별, 사회 계층, 혈액형, 국가 별 제휴, 관찰 시간 또는 Likert 척도를 통한 등급이 그 예입니다. 출처 : Pandas Docs
객체 생성
In [188]: s = pd.Series(["a","b","c","a","c"], dtype="category")
In [189]: s
Out[189]:
0 a
1 b
2 c
3 a
4 c
dtype: category
Categories (3, object): [a, b, c]
In [190]: df = pd.DataFrame({"A":["a","b","c","a", "c"]})
In [191]: df["B"] = df["A"].astype('category')
In [192]: df["C"] = pd.Categorical(df["A"])
In [193]: df
Out[193]:
A B C
0 a a a
1 b b b
2 c c c
3 a a a
4 c c c
In [194]: df.dtypes
Out[194]:
A object
B category
C category
dtype: object
대형 임의 데이터 세트 작성
In [1]: import pandas as pd
import numpy as np
In [2]: df = pd.DataFrame(np.random.choice(['foo','bar','baz'], size=(100000,3)))
df = df.apply(lambda col: col.astype('category'))
In [3]: df.head()
Out[3]:
0 1 2
0 bar foo baz
1 baz bar baz
2 foo foo bar
3 bar baz baz
4 foo bar baz
In [4]: df.dtypes
Out[4]:
0 category
1 category
2 category
dtype: object
In [5]: df.shape
Out[5]: (100000, 3)
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow