在 Pandas 数据帧上使用循环进行 Foursquare 调用

问题描述

卡在项目的一个步骤上。对于这一部分,我有一个数据框 (df_income_zip_good),其中包含美国人均收入排名前 100 的城镇的信息。

数据框如下所示:

df_income_zip_good.head()

我已经使用 folium 在这个数据帧上运行了一个循环,并且能够毫无问题地进行映射。

jwtToken

folium map plotting locations from df_income_zip_good

我没有成功尝试编写另一个循环,该循环会为 df_income_zip_good 中的每个纬度和经度组合从 Foursquare 中抓取信息。

for i,series in df_income_zip_good.iterrows():
    lat = series ['lat']
    lng = series ['lng']
    town = series ['place']

    folium.Marker (location=[lat,lng],popup = town,icon = folium.Icon(color='blue')).add_to(map_usa)
map_usa

请求的 json 打印出来,但它只对 df_income_zip_good 中的一行打印。它似乎没有在 df_income_zip_good 中循环。

不知道去哪里,希望得到任何指导。

谢谢!

解决方法

如果你看看你的代码

or i,series in df_income_zip_good.iterrows():
    ...

#export results to json file
result4Sqr = requests.get(url4Sqr).json()["response"]['groups'][0]['items']


#print results from call
print (result4Sqr)

最后几行不是循环的一部分(它们不像其他行那样缩进)。所以首先执行循环,然后在循环中最后设置的值上执行其他行。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...