[pandas] df.append()之后数据为空/保存为空的解决方案

本文介绍了一种正确使用DataFrame的方法,特别是如何通过append函数添加新的行。文章指出这不是原地操作,而是会产生一个新的DataFrame,并且演示了如何正确地进行操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述
从文档中,我们可以推测出这并不是一个原地 操作,而是会返回一个新的DataFrame,
目测是通过类似拼接的方式实现的,所以正确的使用方法应该是:

            df_out=df_out.append({'err':err,'predicted':corrected_sent,'target':cor},
                          ignore_index=True)
使用Python的BeautifulSoup库配合requests库和pandas库抓取网页数据通常包括以下几个步骤: 1. 首先,你需要安装必要的库,如果尚未安装,可以运行: ``` pip install beautifulsoup4 requests pandas ``` 2. 然后,使用requests库获取网页内容: ```python import requests url = 'https://gdzd.stats.gov.cn/sjfb/sjjd/index_mo.html' response = requests.get(url) page_content = response.text ``` 3. 使用BeautifulSoup解析HTML内容: ```python from bs4 import BeautifulSoup soup = BeautifulSoup(page_content, 'lxml') ``` 4. 定位包含所需数据的元素,这通常需要查看页面源代码或使用开发者工具分析。找到表格或其他结构化的数据容器。 5. BeautifulSoup允许我们通过CSS选择器或XPath表达式提取数据。假设数据在`table`标签内,你可以这样做: ```python data_table = soup.find('table') # 或者更具体的CSS/XPath表达式 ``` 6. 数据清洗并转换成pandas DataFrame,以便进一步处理: ```python import pandas as pd data_list = [] for row in data_table.find_all('tr'): # 遍历每一行 cols = [cell.text.strip() for cell in row.find_all('td')] # 提取列数据 data_list.append(cols) # 将每行添加到列表中 df = pd.DataFrame(data_list, columns=['月份', '消费价格数据']) # 假设列名是这样的,实际需要根据实际情况调整 ``` 7. 最后,检查DataFrame是否有缺失的数据,并考虑如何处理,可能需要根据网站结构进一步优化爬虫逻辑。 注意:由于网页结构可能会改变,上述代码可能需要针对目标页面的具体布局进行修改。此外,频繁抓取网站数据需遵守网站的robots.txt规则,并确保不侵犯版权。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值