質問: spearmanr(x,y) print("相関係数", correlation) print("p値",pvalue) ``` ### 補足情報(FW/ツールのバージョンなど) 解析結果のスクリーンショットを添付しております![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/409b180e334c4096e583b43746e92e57.png)
回答: 今回は結果は間違ってないと思いますが推奨される書き方ではありません。 ``` # 3. 相関係数として使用するパラメータをxとyに代入(質的変数でも代入できるようにget_dummiesを使用) y = df['y'] x = pd.get_dummies(df[['temperature']]) ``` ただここの意味がわかりません。 連続値の'temperature'を指定しつつ「質的変数でも代入できるようにget_dummiesを使用」がわかりません。 無意味で余計な関数を挟むとバグの温床になるので避けたほうがいい書き方だと思います。 ここに temperature ではなく質的変数が入ってきてカテゴリが複数あるとダミー変数化して ``` correlation, pvalue = spearmanr(x,y) ``` でエラーになります。 つまり、 連続変数が入ってくると無駄にget_dummiesされる 質的変数が入ってくるとspearmanrの計算が(たまたまカテゴリが1つのみ以外)出来ない よって、このコードは推奨されません。