TypeError:字符串索引必须是整数(在lambda函数中)

2024-09-29 21:27:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我的数据集如下所示

url         boolean          details                                             
                                                                                       numberOfPages       date
xzy.com     0                {'https://www.eltako.depdf': {'numberOfPages': 440, 'date': '2017-09-20'},'https://new.com': {'numberOfPages': 240, 'date': '2017-09-20'} }

numberOfPages和date列最初为空,而details列有一个字典。我想遍历所有行(URL)并检查它们的details列。对于details列中的每个键,我想单独创建一行,然后使用numberOfPages和date值添加列值。结果应该是这样的:

url         boolean          pdfLink                             numberOfPages   date           
xzy.com     0                https://www.eltako.depdf            440             2017-09-20
                             https://new.com                     240             2017-09-20

我尝试了这个,但是第二行给了我一个错误:TypeError: string indices must be integers

def arrange(df):
    
    df=df.explode('details').reset_index(drop=True)
    out=pd.DataFrame(df['details'].map(lambda x:[x[y] for y in x]).explode().tolist())


Tags: 数据httpscomurldfnewdatewww

热门问题