w24324_ 2022-05-10 20:05 采纳率: 100%
浏览 15
已结题

对dataframe的字段的处理

对dataframe的字段的处理

img


怎么把这个keywords列里面的name 提取出来转成x|x|x的格式。

  • 写回答

1条回答 默认 最新

  • blackoon88 2022-05-10 21:18
    关注
    
    
    
    import pandas as pd
    
    dic1={'id':['862','8844','7890'],'keywords':[[{'id':931,'name':'jealousy'},{'id':932,'name':'jealousy'}],[{'id':931,'name':'jealousy'},{'id':932,'name':'jealousy'}],[{'id':931,'name':'jealousy'},{'id':932,'name':'jealousy'}]]}
    df=pd.DataFrame(dic1)
    print(df)
    
    for index, row in df.iterrows():
        str1 = row['keywords'][0]['name']
        for i in range(1, len(row['keywords'])):
            str1 = str1 + '|' + row['keywords'][i]['name']
        row['keywords'] = str1
    
    
    print(df)
    

    运行结果

         id                                           keywords
    0   862  [{'id': 931, 'name': 'jealousy'}, {'id': 932, ...
    1  8844  [{'id': 931, 'name': 'jealousy'}, {'id': 932, ...
    2  7890  [{'id': 931, 'name': 'jealousy'}, {'id': 932, ...
         id           keywords
    0   862  jealousy|jealousy
    1  8844  jealousy|jealousy
    2  7890  jealousy|jealousy
    
    

    若有帮助,谢谢采纳~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 5月29日
  • 已采纳回答 5月21日
  • 创建了问题 5月10日