You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用pandas apply调用Google Places API处理CSV坐标列表

问题排查及修复方案

你代码里的apply调用存在3个明确错误,修复后即可正常运行:

    1. 参数传递格式错误:你自定义的givePlaces需要3个独立入参(location, radius, type),但你在lambda中把4个值包裹在同一个元组里,作为第一个参数传入,等于函数只收到1个参数,缺少后两个参数
    1. 列名不匹配:你的CSV表头是Latitude(纬度)、Longitude(经度)、Radius(检索半径),但代码中调用的列名是Länge、Breite,和实际表头不对应,会触发字段不存在的报错
    1. 语法错误:lambda表达式的括号未正确闭合,缺少两处右括号

修正后代码

仅需要替换你报错的apply调用段即可:

# 修复后的apply调用,注意参数顺序、列名匹配、括号闭合
df['places'] = df.apply(lambda row: givePlaces(
    location = (row['Latitude(纬度)'], row['Longitude(经度)']),
    radius = row['Radius(检索半径)'],
    type = 'cafe'
), axis=1)

可选优化建议

如果后续调用出现API限额报错,可以在每次调用givePlaces后增加1-2秒的等待时间,避免触发Google接口的频率限制:

def givePlaces(location, radius, type):
    # 原有代码不变,在函数末尾增加1秒等待
    time.sleep(1)
    print("found " + str(len(places)) + " places")
    return places

内容的提问来源于stack exchange,提问作者marinade

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 02:06:05