Python pandas 内使用 replace 同时替换多个字符串

replace

今天学到的,把Dataframe一列里的字符串数据分别替换成不同的数字或其他的

在这里插入图片描述


替换单个字符:

1、把A替换成X

replace('A','X')

替换多个字符时

1、把A,B,C 都替换为E

replace(['A','B','C'],'X')

2、把A替换成7,把C替换成3

replace({'A':7,'C':3})

实例证明:
import  pandas as pd
import numpy as np

data = {"id":[0,1,2,3,4,5,6,7,8,9,10],"pc":["qi","yi","san","qi","qi","qi","qi","qi","san","yi","yi"],"num":[1,2,3,1,1,2,3,1,2,6,4]}
df = pd.DataFrame(data)

df['pc'] = df['pc'].replace('san',3)
#df['pc'] = df['pc'].replace(['qi','yi','san'],3)
#df['pc'] = df['pc'].replace({'qi':7,'yi':1,'san':3})
print(df)

结果输出为:
第一个

	id	pc	num
0	0	qi	1
1	1	yi	2
2	2	3	3
3	3	qi	1
4	4	qi	1
5	5	qi	2
6	6	qi	3
7	7	qi	1
8	8	3	2
9	9	yi	6
10	10	yi	4

第二个

	id	pc	num
0	0	3	1
1	1	3	2
2	2	3	3
3	3	3	1
4	4	3	1
5	5	3	2
6	6	3	3
7	7	3	1
8	8	3	2
9	9	3	6
10	10	3	4

第三个

id	pc	num
0	0	7	1
1	1	1	2
2	2	3	3
3	3	7	1
4	4	7	1
5	5	7	2
6	6	7	3
7	7	7	1
8	8	3	2
9	9	1	6
10	10	1	4
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值