在pandas data frame中,可以使用pd.Categorical
方法基于已有的类别创建新的类别。
首先,我们需要先创建一个示例的data frame:
import pandas as pd
data = {'Category': ['A', 'B', 'A', 'C', 'B']}
df = pd.DataFrame(data)
现在,我们可以使用pd.Categorical
方法将Category
列转换为Categorical类型,并指定已有的类别:
categories = ['A', 'B', 'C']
df['New_Category'] = pd.Categorical(df['Category'], categories=categories)
通过以上代码,我们将Category
列转换为了Categorical类型,并基于已有的类别['A', 'B', 'C']
创建了新的类别New_Category
。如果原始数据中存在未包含在categories
中的类别,那么它们将被转换为NaN
。
接下来,我们可以查看新的data frame:
print(df)
输出结果如下:
Category New_Category
0 A A
1 B B
2 A A
3 C C
4 B B
在新的data frame中,Category
列保持不变,而New_Category
列则基于已有的类别进行了转换。
这种基于已有类别创建新类别的方法在以下情况下特别有用:
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云