Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中使用seaborn模块时遇到问题_Python_Python 2.7_Pandas_Seaborn - Fatal编程技术网

在python中使用seaborn模块时遇到问题

在python中使用seaborn模块时遇到问题,python,python-2.7,pandas,seaborn,Python,Python 2.7,Pandas,Seaborn,我正在尝试使用seaborn的jointplot()方法绘制一些基本图 我的熊猫数据框如下所示: Out[250]: YEAR Yields avgSumPcpn avgMaxSumTemp avgMinSumTemp 1970 5000 133.924981 30.437124 19.026974 1971 5560 107.691316 31.161974 19.278186 1972 5196 116.830066 31.45

我正在尝试使用seaborn的
jointplot()
方法绘制一些基本图

我的熊猫数据框如下所示:

Out[250]:
YEAR    Yields  avgSumPcpn  avgMaxSumTemp   avgMinSumTemp
1970    5000    133.924981  30.437124   19.026974
1971    5560    107.691316  31.161974   19.278186
1972    5196    116.830066  31.454192   19.443712
1973    4233    181.550733  30.373581   19.097679
1975    5093    112.137538  30.428966   18.863224
我试图画出
'Yields'
'YEAR'
的对比图(这样一个图可以看出
'Yields'
是如何随时间变化的)。一个简单的情节

但当我这么做的时候:

sns.jointplot(x='YEAR',y='Yeilds', data = summer_pcpn_temp_yeild, kind = 'reg', size = 10)
我得到以下错误:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-251-587582a746b8> in <module>()
      3 #ax = plt.axes()
      4 #sns_sum_reg_min_temp_pcpn = sns.regplot(x='avgSumPcpn',y='avgMaxSumTemp', data = df_sum_temp_pcpn)
----> 5 sns.jointplot(x='Yeilds',y='YEAR', data = summer_pcpn_temp_yeild, kind = 'reg', size = 10)
      6 plt.title('Avg Summer Precipitation vs Yields of Wharton TX', fontsize = 10)
      7 

//anaconda/lib/python2.7/site-packages/seaborn/distributions.pyc in jointplot(x, y, data, kind, stat_func, color, size, ratio, space, dropna, xlim, ylim, joint_kws, marginal_kws, annot_kws, **kwargs)
    793     grid = JointGrid(x, y, data, dropna=dropna,
    794                      size=size, ratio=ratio, space=space,
--> 795                      xlim=xlim, ylim=ylim)
    796 
    797     # Plot the data using the grid

//anaconda/lib/python2.7/site-packages/seaborn/axisgrid.pyc in __init__(self, x, y, data, size, ratio, space, dropna, xlim, ylim)
   1637         if dropna:
   1638             not_na = pd.notnull(x) & pd.notnull(y)
-> 1639             x = x[not_na]
   1640             y = y[not_na]
   1641 

TypeError: string indices must be integers, not Series
这给了我:

<class 'pandas.core.frame.DataFrame'>
<class 'pandas.core.frame.DataFrame'>
<class 'pandas.core.frame.DataFrame'>
<class 'pandas.core.frame.DataFrame'>
<class 'pandas.core.frame.DataFrame'>
<type 'numpy.ndarray'>

因此,我无法理解如何修复它

任何帮助都将不胜感激


感谢

检查收益率是否具有整数(而非字符串)类型的值。

尝试在调用jointplot时将x='Yelds'更改为x='Yelds'

sns.jointplot(x='YEAR',y='Yeilds', data = summer_pcpn_temp_yeild, kind = 'reg', size = 10)
错误消息具有误导性。Seaborn在summer\u pcpn\u temp\u yeild数据框中找不到名为“Yeilds”的列,因为数据框列拼写为“Yields”

我也遇到了同样的问题,通过将x=参数改为sns.jointplot()解决了这个问题

sns.jointplot(x='YEAR',y='Yeilds', data = summer_pcpn_temp_yeild, kind = 'reg', size = 10)