1 回答

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超9個(gè)贊
它對(duì)我有用, Datanovice在上一個(gè)問(wèn)題中給出的答案對(duì)索引進(jìn)行了一些更改。
正如問(wèn)題所述,問(wèn)題在于'ID_Code'成為索引而不是列。所以我的解決方案涉及添加一個(gè)具有唯一 ID_Code 的列。為此,我找到了兩種可能的方法。
解決方案 1
.unique()與 as .unique() 結(jié)合使用會(huì)pd.Dataframe()返回一個(gè) numpy.ndarray,它必須再次轉(zhuǎn)換為 Dataframe。
df4 = pd.DataFrame(df['ID_Code'].unique(),columns=['ID_Code'],index=df['ID_Code'].unique())
df5 = pd.concat([df4,df3],axis=1)
col = 'ID_Code'
cond = [df5[col].eq(1),
df5[col].isin([5,7])]
outputs = [3,2]
df5[col] = np.select(cond,outputs,default=df5[col])
df6 = df5.groupby(col).sum()
方案二
用于將.reset_index()ID_Code 從索引中移出到單獨(dú)的列中。
df3 = df3.reset_index()
col = 'ID_Code'
cond = [df3[col].eq(1),
df3[col].isin([5,7])]
outputs = [3,2]
df3[col] = np.select(cond,outputs,default=df3[col])
df4 = df3.groupby(col).sum()
添加回答
舉報(bào)