0

我在 linux 命令提示符下使用 pip 安装了 pandasql,并启动了 ipython notebook:

felix@xanadu ~ $ sudo pip install pandasql
[sudo] password for felix: 
Downloading/unpacking pandasql
  Downloading pandasql-0.6.2.tar.gz
  Running setup.py (path:/tmp/pip_build_root/pandasql/setup.py) egg_info for package pandasql

Installing collected packages: pandasql
  Running setup.py install for pandasql

Successfully installed pandasql
Cleaning up...
felix@xanadu ~ $ ipython notebook

然后尝试在 ipython notebook 中导入 pandas 和它:

import pandas    
import pandasql

..它不高兴,环顾四周,但似乎没有任何地方有答案。这是它给出的错误消息:

--------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-c9fa37159ca4> in <module>()
      1 import pandas
----> 2 import pandasql

/usr/local/lib/python2.7/dist-packages/pandasql/__init__.py in <module>()
----> 1 from .sqldf import sqldf
      2 import os
      3 import pandas as pd
      4 
      5 

/usr/local/lib/python2.7/dist-packages/pandasql/sqldf.py in <module>()
      2 import pandas as pd
      3 import numpy as np
----> 4 from pandas.io.sql import to_sql, read_sql
      5 import re
      6 import os

ImportError: cannot import name to_sql

有没有人有任何想法?干杯

4

1 回答 1

1

您绝对应该升级到pandas0.16.0:

sudo pip install -U pandas

刚才看了下0.13.10.16.0pandas/io/sql.py的源码,老版本没有 and 方法,最新版本有。to_sql()read_sql()


总结我们在评论中的对话,为了成功构建pandas,您需要从系统的包管理器(、、、等等)安装gccg++和包。如果您正在为 Python 3 构建,则需要该包。python-devapt-getyumzypperpython3-dev

如果您使用的是 Windows 和 Python 的标准 python.org 版本,让您的包保持最新的最简单方法是使用 Christoph Gohlke 的Python Extension Packages for Windows 存储库。许多软件包依赖于他的MKL链接版本numpy,包括pandas. 所有这些包的好处是它们都针对 32 位和 64 位版本的 Python 进行了预编译,并且通常可用于 Python 2.7、3.3 和 3.4(当然,取决于包 - 有些避风港'尚未移植到 Py3)。它们以.whl格式提供,因此安装/升级就像

pip install -U name_of_package.whl
于 2015-04-20T18:45:42.933 回答