pandas字符串映射成数字的方法及代码是什么
Admin 2022-07-26 群英技术资讯 375 次浏览
在有些数据集中,有些数据变量用字符串表示,但为了方便处理,往往想转换为好处理的格式,这时候不一定要用one hot进行编码,也可以直接转成整数:
test_df["xx"] = pd.factorize(test_df["xx"])[0].astype(int)
但是这样映射的数字是从0开始的,如果有初始要求,可以对映射结果加上某个值,例如,把从0开始变为从15开始:
test_df["xx"] = test_df["xx"].add(15)
效果gift_cards["user_id"] = pd.factorize(gift_cards["user_id"])[0].astype(int):
user_id item_id ratings time
0 B001GXRQW0 APV13CM0919JD 1.0 1229644800
1 B001GXRQW0 A3G8U1G1V082SN 5.0 1229472000
2 B001GXRQW0 A11T2Q0EVTUWP 5.0 1229472000
3 B001GXRQW0 A9YKGBH3SV22C 5.0 1229472000
4 B001GXRQW0 A34WZIHVF3OKOL 1.0 1229472000
... ... ... ... ...
147189 B01H5PPJT4 A2K9WVQW9TLWNK 5.0 1536969600
147190 B01H5PPJT4 A149ALSR6TPGF7 4.0 1536278400
147191 B01H5PPJT4 A2Q066NZCQSCOR 5.0 1535500800
147192 B01H5PPJT4 A1KJLWCW7XBS8I 5.0 1534550400
147193 B01H5PPJT4 ANABUB0FRZXRM 5.0 1534204800
user_id item_id ratings time
0 0 APV13CM0919JD 1.0 1229644800
1 0 A3G8U1G1V082SN 5.0 1229472000
2 0 A11T2Q0EVTUWP 5.0 1229472000
3 0 A9YKGBH3SV22C 5.0 1229472000
4 0 A34WZIHVF3OKOL 1.0 1229472000
... ... ... ... ...
147189 858 A2K9WVQW9TLWNK 5.0 1536969600
147190 858 A149ALSR6TPGF7 4.0 1536278400
147191 858 A2Q066NZCQSCOR 5.0 1535500800
147192 858 A1KJLWCW7XBS8I 5.0 1534550400
147193 858 ANABUB0FRZXRM 5.0 1534204800
使用map的方法就可以实现把某一列的字符类型的值转换为数字。
class_mapping = {'A':0, 'B':1} data[class] = data[class].map(class_mapping)
首先定义一个字典,然后使用map方法就可以把某一列的字符类型的值转换为数字。
好了,这就是对使用pandas把某一列的字符值转换为数字的认识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
大家好,本篇文章主要讲的是初学者快看,Python下划线的五个作用介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
这篇文章主要介绍了python如何获取当前系统的日期,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
这篇文章主要介绍了利用 Python 开发一个 Python 解释器,在本文中,我们将设计一个可以执行算术运算的解释器。下面我们大家一起来看看吧
我们从小学开始背诵九九乘法表,是因为九九乘法表是一切计算的前提,没有九九乘法表,就难以进行计算。而且九九乘法表易于记忆和运算,让我们的数学计算起来更简便,更快捷,更有趣味。九九乘法表这么重要,我们就用for语句来打印乘法表吧。
这篇文章主要介绍了numpy 实现返回指定行的指定元素的位置索引操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008