我正在努力使用 .replace() 將單元格值設定為帶有熊貓的元組或串列
這是我的字典:
to_replace = {0: (0.6509803921568628, 0.807843137254902, 0.8901960784313725, 1.0),
1: (0.12156862745098039, 0.47058823529411764, 0.7058823529411765, 1.0),
2: (0.6980392156862745, 0.8745098039215686, 0.5411764705882353, 1.0)}
這是我的資料框
df = pd.DataFrame({'ArrayID': {3: 'C112216_S47', 2: 'H9_S73', 1: 'NI_ADULT_S72', 0: 'org_H14_Colon_p13_S1'},
'Category': {3: 'C112216_S47', 2: 'H9_S73', 1: 'NI_ADULT_S72', 0: 'org_H14_Colon_p13_S1'},
'cval': {3: 2, 2: 0, 1: 1, 0: 0}})
這是我嘗試為上面的每個元組添加一個新列“顏色”:
df["color"] = df["cval"].replace(to_replace)
我想要的輸出是
ArrayID Category cval color
3 C112216_S47 C112216_S47 2 (0.6980392156862745, 0.8745098039215686, 0.5411764705882353, 1.0)
2 H9_S73 H9_S73 0 (0.6509803921568628, 0.807843137254902, 0.8901960784313725, 1.0)
1 NI_ADULT_S72 NI_ADULT_S72 1 (0.12156862745098039, 0.47058823529411764, 0.7058823529411765, 1.0)
0 org_H14_Colon_p13_S1 org_H14_Colon_p13_S1 0 (0.6509803921568628, 0.807843137254902, 0.8901960784313725, 1.0)
uj5u.com熱心網友回復:
使用map代替replace:
df["color"] = df["cval"].map(to_replace)
輸出:
ArrayID Category cval color
3 C112216_S47 C112216_S47 2 (0.6980392156862745, 0.8745098039215686, 0.5411764705882353, 1.0)
2 H9_S73 H9_S73 0 (0.6509803921568628, 0.807843137254902, 0.8901960784313725, 1.0)
1 NI_ADULT_S72 NI_ADULT_S72 1 (0.12156862745098039, 0.47058823529411764, 0.7058823529411765, 1.0)
0 org_H14_Colon_p13_S1 org_H14_Colon_p13_S1 0 (0.6509803921568628, 0.807843137254902, 0.8901960784313725, 1.0)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/400820.html
上一篇:使用lambda提取預期的數字
下一篇:熊貓日歷問題
