gpt4 book ai didi

pandas - 将分类变量从 String 表示形式转换为 int 表示形式

转载 作者:行者123 更新时间:2023-12-02 02:15:12 27 4
gpt4 key购买 nike

我有一个字符串数组形式的文本分类 numpy 数组,即y_train = ['A', 'B', 'A', 'C',...]。我正在尝试应用 SKlearn 多项式 NB 算法来预测整个数据集的类。

我想将 String 类转换为整数,以便能够输入算法并转换 ['A', 'B', 'A', 'C', ...]进入['1','2','1','3',...]

我可以编写一个 for 循环来遍历数组并使用 int 分类器创建一个新数组,但是是否有直接函数可以实现这一点

最佳答案

尝试factorize方法:

In [264]: y_train = pd.Series(['A', 'B', 'A', 'C'])

In [265]: y_train
Out[265]:
0 A
1 B
2 A
3 C
dtype: object

In [266]: pd.factorize(y_train)
Out[266]: (array([0, 1, 0, 2], dtype=int64), Index(['A', 'B', 'C'], dtype='object'))

演示:

In [271]: fct = pd.factorize(y_train)[0]+1

In [272]: fct
Out[272]: array([1, 2, 1, 3], dtype=int64)

关于pandas - 将分类变量从 String 表示形式转换为 int 表示形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41078003/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com