如果某个值在data
中,我怎样才能将数据格filllist
中的值替换为varlist
中的信息?
import pandas as pd
data = pd.DataFrame({'A' : [5,6,3,4], 'B' : [1,2,3, 10]})
varlist = (5,7,9,10)
fillist = ('a', 'b', 'c', 'd')
data[data.isin(varlist)==True] = 'is in varlist!'
将数据返回为:
A B
0 is in varlist! 1
1 6 2
2 3 3
3 4 is in varlist!
但我想:
A B
0 a 1
1 6 2
2 3 3
3 4 d
答案 0 :(得分:3)
使用数据框的replace
方法。
replace_map = dict(zip(varlist, fillist))
data.replace(replace_map)
这给出了
A B
0 a 1
1 6 2
2 3 3
3 4 d
如果您想以不同的方式使用文档,请使用此文档: replace method documentation