0

pandas整数値と浮動小数点値を含むデータセットがあります:

>>> df2[['AGE_REF', 'RETSURV']].dtypes
AGE_REF      int64
RETSURV    float64
dtype: object

パンダを使用して共同分布をプロットしたいと思います。pandas が共同分布を視覚化する簡単な方法は見当たりませんでしたが、偶然seaborn. そこで、目的に合わせて既に見つけたコードを調整しようとしました。

>>> import seaborn as sns
>>> sns.jointplot('AGE_REF', "RETSURV", df2,
              kind="hex")
Traceback (most recent call last):
  File "<input>", line 2, in <module>
  File "/usr/local/lib/python2.7/site-packages/seaborn/distributions.py", line 969, in jointplot
    gridsize = int(np.mean([x_bins, y_bins]))
OverflowError: cannot convert float infinity to integer

関連するバグレポートを見つけたので、そこで回避策を実行しようとしましたが、成功しませんでした:

>>> sns.jointplot('AGE_REF', "RETSURV", df2,
              kind="hex", marginal_kws={"bins": 10})
Traceback (most recent call last):
  File "<input>", line 2, in <module>
  File "/usr/local/lib/python2.7/site-packages/seaborn/distributions.py", line 969, in jointplot
    gridsize = int(np.mean([x_bins, y_bins]))
OverflowError: cannot convert float infinity to integer
4

1 に答える 1

1

デフォルトの hexbin グリッドサイズは、ヒストグラムと同じ参照規則の計算を使用するため、これらの仮定に何らかの形で違反するデータがある場合は、それも直接設定する必要があります。

sns.jointplot(x, y, kind="hex",
              joint_kws={"gridsize": 10},
              marginal_kws={"bins": 10})
于 2014-11-08T00:38:05.537 に答える