python - 如何逐个单元格地填充具有零列和循环的空熊猫数据框?
问题描述
我需要抓取数百页,而不是存储每个页面的整个 json,我只想将每个页面中的几列存储到 pandas 数据框中。但是,在数据框为空的开始时,我遇到了问题。我需要填充一个没有任何列或行的空数据框。所以下面的循环不能正常工作:
import pandas as pd
import requests
cids = [4100,4101,4102,4103,4104]
df = pd.DataFrame()
for i in cids:
url_info = requests.get(f'myurl/{i}/profile')
jdata = url_info.json()
df['Customer_id'] = i
df['Name'] = jdata['user']['profile']['Name']
...
在这种情况下,我该怎么办?
解决方案
您可以通过使用enumerate()
, 和来解决这个问题loc
:
for index, i in enumerate(cids):
url_info = requests.get(f'myurl/{i}/profile')
jdata = url_info.json()
df.loc[index, 'Customer_id'] = i
df.loc[index, 'Name'] = jdata['user']['profile']['Name']
推荐阅读
- html - 在渲染期间访问了属性“”,但未在实例上定义
- javascript - three.js 中的窗口大小调整问题
- php - php for 循环中的日期时间,它位于 foreach 循环内
- java - 如何在不使用插件的情况下从 Jenkins 将战争文件部署到 Tomcat
- vuejs2 - 有没有办法为Vuepress项目的特定子目录下的每个markdown文件禁用导航栏?
- python - 在 Visual Studio 2019 中调试 Scrapy 时遇到断点问题
- c - 用于在 C 中传输的整数数据压缩,无需外部库
- sql-server - 从另一个表中复制 IDENTITY 列并为丢失的记录生成新的 ID
- javascript - 未触发 Livewire 发射
- reactjs - yield select() 序列不起作用