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

在AWS Glue中使用Pandas-Profiling出现依赖缺失问题如何解决

AWS Glue运行Pandas-Profiling(ydata-profiling)依赖缺失问题解决方法

问题核心原因

Pandas-Profiling(目前已更名为ydata-profiling)存在大量传递依赖包,仅上传其本身的wheel包到Glue Library Path时,运行环境默认缺失multimethod、visions、networkx、pillow等子依赖,因此会连续触发模块找不到的报错。

解决方法

方法1:预下载全量依赖包上传到S3(生产环境推荐)

该方法无需作业访问公网,运行稳定性高,步骤如下:

  • 准备和你使用的Glue版本匹配的Python环境:比如Glue 4.0对应Python 3.10、Linux x86_64架构,Glue 3.0对应Python 3.7
  • 执行命令全量下载所有依赖的wheel包:
    若使用旧版pandas-profiling:
    pip download pandas-profiling -d ./profiling_deps --python-version 3.10 --platform manylinux2014_x86_64 --only-binary=:all:
    若使用新版ydata-profiling:
    pip download ydata-profiling -d ./profiling_deps --python-version 3.10 --platform manylinux2014_x86_64 --only-binary=:all:
    命令中的--python-version参数要替换为你Glue环境对应的Python版本
  • 把./profiling_deps目录下所有的.whl文件全部上传到S3的Glue Library Path路径下,配置到作业的依赖库列表中即可

方法2:作业运行时动态安装依赖(测试环境推荐)

Glue 2.0及以上版本支持作业内直接调用pip安装依赖,仅需要作业有公网访问权限:

  • 在作业脚本最开头加入以下代码:
import subprocess
import sys
# 安装指定版本的分析库
subprocess.call([sys.executable, "-m", "pip", "install", "ydata-profiling==4.5.1"])

注意事项

  • 需提前确认Pandas-Profiling/ydata-profiling版本与Glue自带的Pandas版本兼容:比如Glue 4.0自带Pandas 1.5.3,不能安装要求Pandas >=2.0的新版本ydata-profiling,否则会出现版本冲突
  • 如果使用Glue Spark作业,只能将采样后的小批量Spark DataFrame转为Pandas DataFrame后再生成分析报告,直接传入全量大数据量会触发内存溢出问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 20:36:04