Pandas版本兼容特定的python和numpy配置?

Ric*_*ell 5 python pandas anaconda conda

有没有一种程序化的方法来找出哪些熊猫版本与特定的python和numpy配置兼容?

我的兴趣是让大熊猫进入ESRI ArcMAP 10.1,它运行在32位Windows上,并且基于python 2.7,numpy 1.6构建.

我尝试通过打开32位Anaconda命令提示符并键入来为与ESRI ArcMap 10.1兼容的Python创建conda环境

conda create -n arcmap101 python=2.7 numpy=1.6 pandas
Run Code Online (Sandbox Code Playgroud)

然后我回到了包含的Python环境 pandas=0.10.1

然而,这似乎应该是可能的建立更高的版本python=2.7,numpy=1.6但我只是不知道高出多少.

我试图寻找在大熊猫的历史在GitHub上的setup.py,有一个min_numpy_ver=1.6正确的向上穿过pandas=0.14虽然最近要求改为min_numpy_ver=1.7,所以我不知道这是否是一个新的要求,或者应该已经加入了bug修复在较早的版本级别.

我看到在PyPI上,pandas=0.11在Windows上构建了反对numpy=1.6,而对于pandas=0.12它,它是针对它构建的numpy=1.7.

但我不知道PyPI构建是一个要求还是一个选择.

有没有什么好方法可以找到这些东西,而不只是问熊猫开发人员?

asm*_*rer 5

每个使用conda构建的numpy包都将numpy主要版本硬编码为依赖项.此版本也反映在构建字符串(如np18py27)中.这可能是过于谨慎,因为许多软件包不使用numpy API的向后不兼容部分(特别是,并非所有软件包实际上都是针对numpy编译C扩展),但不管怎么说,它就是这样做的.

当1.8发布时,Continuum停止构建旧版本的numpy,这就是为什么当你告诉它与numpy 1.6一起安装时,conda会给你一个旧版本的pandas.要查看有什么,请运行conda search pandas并记下构建字符串.

如果你需要一个不可用的numpy/pandas组合,你有两个选择:

  1. 手动安装"错误的"熊猫,希望它能正常工作.numpy API在理论上是向后兼容的,所以这里有希望.不过,在执行此操作后,可能值得运行pandas测试以查看它是否确实有效.就像是

    conda create -n arcmap101 python=2.7 numpy=1.6 pandas

    conda install -n arcmap101 --no-deps pandas=0.13 # Or whatever version

    这将使您的环境处于conda将视为不一致的状态,但是将在那里安装包.您可以指定pandas的确切版本,直到构建字符串为止pandas=0.13.0=np17py27_0

  2. 使用您想要的组合构建您自己的pandas包.conda skeleton pypi pandas将为您提供一个良好开端的配方(build.sh中不需要任何特殊功能,或者需要补丁,至少根据我们在Continuum使用的配方).然后用它构建它

    conda build --npy 1.6 --py 2.7 pandas