在处理包含文本数据的 DataFrame 时,将文本列转换为分类数据类型通常是一个好主意。这可以提高性能并节省内存。Pandas 允许将列转换为 category
类型。
category
类型适用于那些只包含有限数量不同值的列(例如,性别、产品类型、评级等)。# 由于代码执行环境重置,需要重新导入 pandas 和准备数据
import pandas as pd
# 示例数据
data_categorical_conversion = {
'Product': ['Apple', 'Banana', 'Cherry', 'Date', 'Elderberry'],
'Price': [5, 3, 9, 7, 1]
}
df_categorical_conversion = pd.DataFrame(data_categorical_conversion)
# 转换为分类数据
df_categorical_conversion['Product'] = df_categorical_conversion['Product'].astype('category')
df_categorical_conversion.dtypes, df_categorical_conversion
在这个示例中,我们将 Product
列从普通的字符串类型转换为了 category
类型。
Product category
Price int64
dtype: object
Product Price
0 Apple 5
1 Banana 3
2 Cherry 9
3 Date 7
4 Elderberry 1
这个结果展示了转换后的数据类型为 category
。使用分类数据类型,尤其在处理具有重复值的文本列时,是一种有效的数据优化技术。