2017-07-21 8 views
0

私はローンを「ジェンダー」と「自営業」の列としてプロットしようとしています。Seabornの行と列として他の2つのカテゴリ変数を使用してカテゴリ変数をプロットする

g=sns.FacetGrid(train,row='Gender',col='Self_Employed',size=2.2,aspect=1.6) 
g.map(plt.hist,'Loan_Status') 
g.add_legend() 
plt.show() 

エラーがある - はTypeError:連結することはできません。「STR」と「フロート」はあなたが持っている問題は、少なくとも1つの文字列を含むLoan_Statusによるものである

答えて

0

オブジェクト。

次の例を参照してください。

train = pd.DataFrame({'Gender':['Male','Female','Male','Female']*3, 
         'Self_Employed':['Yes','Yes','No']*4,'Somevalue':[1,2,3,4]*3, 'String':['yes','No','No']*4}) 

g=sns.FacetGrid(train,row='Gender',col='Self_Employed',size=2.2,aspect=1.6) 
g.map(plt.hist,'Somevalue') 
g.add_legend() 
plt.show() 

この画像の結果です。私たちは、単に文字列で構成されているStringと同じことをしようとすると、一方

enter image description here

g=sns.FacetGrid(train,row='Gender',col='Self_Employed',size=2.2,aspect=1.6) 
g.map(plt.hist,'String') 
g.add_legend() 
plt.show() 

同じエラーが表示されます。

TypeError: unorderable types: str() < float() 

あなたの問題を解決するには、あなたのLoan_Status列をチェックし、数字に(私はラベルであると推定)あなたの文字列をエンコードする必要があります。あなたのためにこれを行うにはsklearn label encoderを見ることができます。あるいは、あなたのためにこれを行うためにあなた自身でコードを書いてください。

+0

ありがとう。私は、Yを1に、Nを0に変更して、同じことをしました。したがって、問題は解決されました。 –

+0

これがあなたの質問に対する解決策だったら、答えを受け入れてください。したがって、この特定の問題に対する解決策があることは明らかです。 – error

+0

これは解決策です。異なる列を使用してプロットを試み、結果を得ました。唯一の問題は、文字列であることでした。 –

関連する問題