pandas.dataFrame.plot(kind=”kde”)报错“找不到指定的模块”的解决方案

1 程序:

import pandas as pd #数据分析
import numpy as np #科学计算
from pandas import Series,DataFrame

import matplotlib.pyplot as plt
import scipy

data_train = pd.read_csv("Train.csv")

fig = plt.figure()
fig.set(alpha=0.2)  # 设定图表颜色alpha参数

#plt.subplot2grid((2,3),(1,0), colspan=2)
data_train.Age[data_train.Pclass == 1].plot(kind="kde")  
data_train.Age[data_train.Pclass == 2].plot(kind='kde')
data_train.Age[data_train.Pclass == 3].plot(kind='kde')
plt.xlabel(u"年龄")# plots an axis lable
plt.ylabel(u"密度") 
plt.title(u"各等级的乘客年龄分布")
plt.legend((u'头等舱', u'2等舱',u'3等舱'),loc='best') # sets our legend for our graph.

plt.show()

2 运行报错:“ImportError: DLL load failed: 找不到指定的模块”

pandas.dataFrame.plot(kind=”kde”)报错“找不到指定的模块”的解决方案_第1张图片

3 原因分析:

这是numpy功能缺失引起的。可能的原因有:
(1)安装的numpy版本是numpy-1.13.1-cp36-none-win_amd64.whl。这个安装文件只有7.4M,功能不够多。
(2)没有手动安装numpy,直接安装pandas。安装pandas的过程中会自动安装numpy,这个numpy版本应该也是numpy-1.13.1-cp36-none-win_amd64.whl。
(3)正确的方法应该是安装numpy-1.13.1+mkl-cp36-cp36m-win_amd64.whl,numpy+mkl有134M,功能较多。比如scipy就依赖于numpy+mkl而非单纯的numpy。

4 解决方案:

(1)卸载numpy-1.13.1-cp36-none-win_amd64.whl
执行命令为:
在命令行窗口的任意路径下,输入

pip uninstall numpy

pandas.dataFrame.plot(kind=”kde”)报错“找不到指定的模块”的解决方案_第2张图片

(2)从 http://www.lfd.uci.edu/~gohlke/pythonlibs/#python-dateutil 下载numpy-1.13.1+mkl-cp36-cp36m-win_amd64.whl并安装
执行命令为:
先进入numpy-1.13.1+mkl-cp36-cp36m-win_amd64.whl的存放目录,再用pip命令安装

pushd d:\Software\Python
pip install numpy-1.13.1+mkl-cp36-cp36m-win_amd64.whl

pandas.dataFrame.plot(kind=”kde”)报错“找不到指定的模块”的解决方案_第3张图片

5 重新运行程序,显示正确的结果:

pandas.dataFrame.plot(kind=”kde”)报错“找不到指定的模块”的解决方案_第4张图片

你可能感兴趣的:(Python)