【问题标题】:How to install python ta-lib library in Azure Machine Learning Juypyter Notebooks如何在 Azure 机器学习 Juypyter Notebooks 中安装 python ta-lib 库
【发布时间】:2020-11-05 20:42:15
【问题描述】:

所以我需要使用这里解释的这个 python 库:

https://medium.com/analytics-vidhya/recognizing-over-50-candlestick-patterns-with-python-4f02a1822cb5

但是当我尝试执行时:

!pip install talib 导入标签

我收到很多错误:

Collecting talib
  Using cached talib-0.1.1.tar.gz (1.3 kB)
Building wheels for collected packages: talib
  Building wheel for talib (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /anaconda/envs/azureml_py36/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-lof3_wuc/talib/setup.py'"'"'; __file__='"'"'/tmp/pip-install-lof3_wuc/talib/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-1dvr6fd9
       cwd: /tmp/pip-install-lof3_wuc/talib/
  Complete output (29 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib
  creating build/lib/talib
  copying talib/__init__.py -> build/lib/talib
  copying talib/cli.py -> build/lib/talib
  installing to build/bdist.linux-x86_64/wheel
  running install
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-install-lof3_wuc/talib/setup.py", line 47, in <module>
      'talib = talib.cli:cli',
    File "/anaconda/envs/azureml_py36/lib/python3.6/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/anaconda/envs/azureml_py36/lib/python3.6/distutils/dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "/anaconda/envs/azureml_py36/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/anaconda/envs/azureml_py36/lib/python3.6/site-packages/wheel/bdist_wheel.py", line 326, in run
      self.run_command('install')
    File "/anaconda/envs/azureml_py36/lib/python3.6/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/anaconda/envs/azureml_py36/lib/python3.6/distutils/dist.py", line 974, in run_command
      cmd_obj.run()
    File "/tmp/pip-install-lof3_wuc/talib/setup.py", line 20, in run
      raise Exception("You probably meant to install and run ta-lib")
  Exception: You probably meant to install and run ta-lib
  ----------------------------------------
  ERROR: Failed building wheel for talib
  Running setup.py clean for talib
Failed to build talib
Installing collected packages: talib
    Running setup.py install for talib ... error
    ERROR: Command errored out with exit status 1:
     command: /anaconda/envs/azureml_py36/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-lof3_wuc/talib/setup.py'"'"'; __file__='"'"'/tmp/pip-install-lof3_wuc/talib/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-7fqjayvz/install-record.txt --single-version-externally-managed --compile --install-headers /anaconda/envs/azureml_py36/include/python3.6m/talib
         cwd: /tmp/pip-install-lof3_wuc/talib/
    Complete output (14 lines):
    running install
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-lof3_wuc/talib/setup.py", line 47, in <module>
        'talib = talib.cli:cli',
      File "/anaconda/envs/azureml_py36/lib/python3.6/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/anaconda/envs/azureml_py36/lib/python3.6/distutils/dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "/anaconda/envs/azureml_py36/lib/python3.6/distutils/dist.py", line 974, in run_command
        cmd_obj.run()
      File "/tmp/pip-install-lof3_wuc/talib/setup.py", line 20, in run
        raise Exception("You probably meant to install and run ta-lib")
    Exception: You probably meant to install and run ta-lib
    ----------------------------------------
ERROR: Command errored out with exit status 1: /anaconda/envs/azureml_py36/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-lof3_wuc/talib/setup.py'"'"'; __file__='"'"'/tmp/pip-install-lof3_wuc/talib/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-7fqjayvz/install-record.txt --single-version-externally-managed --compile --install-headers /anaconda/envs/azureml_py36/include/python3.6m/talib Check the logs for full command output.
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-56-ef2dd36041a5> in <module>
      1 get_ipython().system('pip install talib')
----> 2 import talib

ModuleNotFoundError: No module named 'talib'

【问题讨论】:

标签: python python-3.x azure pip azure-machine-learning-studio


【解决方案1】:

@phd 是对的。 TA-lib Python 库的 README.md

要使用 TA-Lib for python,您需要已经安装了 TA-Lib。

我刚刚创建了一个新的 AML 计算实例,并且在第一次在 VM 上手动下载、构建和安装 TA-lib 包后,能够成功导入 Python 的 TA-lib。一些步骤大约需要 5 分钟,但 YMMV

在 Azure ML 计算实例上安装。

  1. 在 Jupyter Labs 中打开计算实例
  2. 打开一个新终端(文件:新建:终端)
  3. 键入以下命令(改编自these linux instructions
    $ wget -c https://sourceforge.net/projects/ta-lib/files/ta-lib/0.4.0/ta-lib-0.4.0-src.tar.gz/download?use_mirror=phoenixnap -O - | tar -xz
    $ cd ta-lib/
    $ ./configure --prefix=/usr
    $ make
    $ sudo make install
    
  4. 安装 TA-lib Python 包装器pip install TA-lib(由于某种原因,我不得不这样做两次)
  5. 打开笔记本并使用import talib 运行单元格

。你的错误意味着你没有 TA-lib 回来

【讨论】:

  • 同样的错误错误:命令错误退出状态1:命令:/anaconda/envs/azureml_py36/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-0g_wo7v6/talib/setup.py'"'"'; file__='"'"'/tmp/pip-install-0g_wo7v6/talib/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open) (__file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close ();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-5v8piasv cwd: /tmp/pip- install-0g_wo7v6/talib/ 完整输出(29 行):
  • 看起来这个包实际上叫做TA-lib而不是talibgithub.com/mrjbq7/ta-lib
  • 比我预期的要复杂一些...但我成功了!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-04
  • 1970-01-01
  • 2023-02-19
  • 1970-01-01
  • 2021-12-15
  • 1970-01-01
相关资源
最近更新 更多