我有一个带有字符串值条目的Pandas列,我确保它是通过
的字符串 df[col].astype(str)
我已经从这些字符串值的枚举中创建了一个字典,其格式为
{...'hello': 56, 'yello': 71,...}
我尝试了多个map / replace实现,但我无法使用字典整数来更新字符串值。
df[col].replace(lambda s: inv_map.get(s) if s in inv_map else s)
是我尝试过的最新版本。我没有得到任何错误或警告,它只是没有映射值。
答案 0 :(得分:2)
我认为你正在寻找apply
即
df = pd.DataFrame({"a":['hello','yello','bye','seeya']})
inv_map = {'hello': 56, 'yello': 71}
col = 'a'
df[col]=df[col].apply(lambda s: inv_map.get(s) if s in inv_map else s)
0 56 1 71 2 bye 3 seeya Name: a, dtype: object
希望这会有所帮助。
答案 1 :(得分:1)
您可以使用map()
# sample data
df
a
0 asd
1 er
2 sdf
3 qwe
dic = {'asd': 21, 'er':90}
df['dic_value'] = df.a.map(dic)
df
a dic_value
0 asd 21.0
1 er 90.0
2 sdf NaN
3 qwe NaN
答案 2 :(得分:0)
public partial class A_ViewController : UIViewController
{
public override void ViewDidLoad(){
base.ViewDidLoad();
mbtnCallAPI.TouchUpInside += BtnCallAPI_TouchUpInside;
}
public void BtnCallAPI_TouchUpInside(object sender, EventArgs e) {
// Call API here. API Callback will return strings
// Send return string to B_ViewController's TextView.
}
}
public partial class B_ViewController : UIViewController
{
public void Output_Update(string msg) {
mTextView.Text += msg;
}
}