python-将数字替换为字符串
我有一个数据帧作为python-将数字替换为字符串,python,pandas,Python,Pandas,我有一个数据帧作为 data = pd.DataFrame({ 'A': [1,1,1,-1,1,1], 'B':['abc','def','ghi','jkl','mno','pqr'] }) data['A'].replace(1,2) 回报 0 2 1 2 2 2 3 -1 4 2 5 2 但是为什么数据['A'].replace(1,“pos”)不起作用?您需要将列“A”转换为类型字符串 data['A']
data = pd.DataFrame({
'A': [1,1,1,-1,1,1],
'B':['abc','def','ghi','jkl','mno','pqr']
})
data['A'].replace(1,2)
回报
0 2
1 2
2 2
3 -1
4 2
5 2
但是为什么
数据['A'].replace(1,“pos”)
不起作用?您需要将列“A”转换为类型字符串
data['A'] = data['A'].astype(str)
然后试试看
data['A'].replace(str(1),'s')
您还可以尝试使用“映射”功能
map_dict = {1: "pos"}
data["test"] = data["A"].map(map_dict)
data
-----------------------
| | A | B | test |
-----------------------
| 0 | 1 | abc | pos |
| 1 | 1 | def | pos |
| 2 | 1 | ghi | pos |
| 3 | -1 | jkl | NaN |
| 4 | 1 | mno | pos |
| 5 | 1 | pqr | pos |
-----------------------
阅读更多: