如何在数据帧列中添加dict



输入数据帧:

Id               Score            Score1
0        19138359    0.5347029367015973   0.832428474443
1        12134001    0.9347094453553113   0.632535428479

以下数据帧需要作为输出:

Id                             Scores
0        19138359  {'Score': 0.5347029367015973, 'Score1': 0.832428474443}
1        12134001  {'Score': 0.9347094453553113, 'Score1': 0.632535428479}
Scores = ['Score', 'Score1']      
d, l = {}, []
for i, row in publish.iterrows():
d['Id'] = row['Id']
d['Scores'] = row[Scores].to_dict()
l.append(d)

它输出错误!

to_dict:中使用orient="records"参数

# Get score columns
score_columns = df.filter(like='Score').columns
# Create dict of scores column
df['Scores'] = df[score_columns].to_dict(orient='records')
# Drop original score columns
df.drop(columns=score_columns, inplace=True)

[out]

Id                                                       Scores
0  19138359  {'Score': 0.5347029367015973, 'Score1': 0.8324284744429999}
1  12134001      {'Score': 0.9347094453553112, 'Score1': 0.632535428479}

最新更新