无法用字典

时间:2017-07-27 15:50:19

标签: python pandas

我有一个带有字符串值条目的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)

是我尝试过的最新版本。我没有得到任何错误或警告,它只是没有映射值。

3 个答案:

答案 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;  
    }
}