pandas 追加不起作用 [英] Pandas Append Not Working

查看:56
本文介绍了 pandas 追加不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

datum = soup.findAll('a', {'class': 'result-title'})
for data in datum:
    print(data.text)
    print(data.get('href'))
    df = {'Title': data.text, 'Url': data.get('href')}
    houseitems.append(df, ignore_index=True)

我的代码有什么问题?为什么当我询问我的家居用品时,它给了我空数据.

What is wrong with my Code? Why when I asked for my houseitems, it gives me empty data.

空数据帧

Columns: [Title, Url, Price]
Index: []

推荐答案

问题是你需要分配 back appended DataFrame,因为 pandas DataFrame.append NOT 像 pure 一样就地工作python append.

Problem is you need assign back appended DataFrame, because pandas DataFrame.append NOT working inplace like pure python append.

看来你想附加到list,所以参数ignore_index=True 不是必需的:

It seem you want append to list, so parameter ignore_index=True is not necessary:

循环解决方案:

houseitems = []
for data in datum:
    print(data.text)
    print(data.get('href'))
    df = {'Title': data.text, 'Url': data.get('href')}
    houseitems.append(df)

或者list comprehension解决办法:

houseitems = [{'Title': data.text, 'Url': data.get('href')} for data in datum]

然后创建DataFrame:

df1 = pd.DataFrame(houseitems)

这篇关于 pandas 追加不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆