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

如何在Python中对DataFrame的URL列逐行调用自定义函数?

问题分析与解决方法

错误原因

你用df.apply(myfunction, axis=1)时,传入myfunction的是整行数据(Pandas Series对象),但你的函数定义是接收单个URL字符串,参数类型不匹配,这就是报错的核心原因。

解决方案

根据你的需求,有两种可行的处理方式:

1. 直接针对目标列调用apply(推荐,更高效)

如果你的函数只需要处理"Page Links"列的URL,直接对该列调用apply,这样传入函数的就是单个URL字符串:

new_df = df['Page Links'].apply(myfunction)

2. 修改函数适配行对象(如果需要用到行内其他数据)

如果函数需要用到当前行的其他列数据,修改myfunction,让它接收行对象并提取URL:

def myfunction(row):
    # 从行对象中提取URL
    url = row['Page Links']
    # 原来的业务逻辑代码
    ...

调试小技巧

如果不确定传入函数的参数类型,可以先临时添加打印语句确认:

def myfunction(param):
    print(type(param))  # 查看参数类型,快速定位问题
    # 原有代码

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 06:29:50