Pandas 的 DataFrame 里可以包含类别数据。
In [127]: df = pd.DataFrame({"id": [1, 2, 3, 4, 5, 6],
.....: "raw_grade": ['a', 'b', 'b', 'a', 'a', 'e']})
.....:
将 grade
的原生数据转换为类别型数据:
In [128]: df["grade"] = df["raw_grade"].astype("category")
In [129]: df["grade"]
Out[129]:
0 a
1 b
2 b
3 a
4 a
5 e
Name: grade, dtype: category
Categories (3, object): [a, b, e]
用有含义的名字重命名不同类型,调用 Series.cat.categories.
In [130]: df["grade"].cat.categories = ["very good", "good", "very bad"]