ValueError:相互相関を使用しながら、所望の配列のオブジェクト深すぎます

diabolik:

私は2つのデータフレームの相互相関を調査しようとしています。コードはここに与えられます。

df1 = pd.DataFrame({"A":[1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1]})
df2 = pd.DataFrame({"A":[7191, 7275, 9889, 9934, 9633, 9924, 9650, 9341, 8820, 8784, 8869]})

np.correlate(df1, df2)

しかし、私はこのエラーを取得します:

https://imgur.com/PIOXwND

何か案は?

Josmoor98:

あなたは2Dであるデータフレームとして渡しているように、このエラーを取得しています。np.correlate2つの1次元配列の相互相関のためのものです。そうしてみてください。

np.correlate(df1.squeeze(), df2.squeeze())

その出力array([80556], dtype=int64)


編集します

あなたの提案に基づき、してみてください

# You will need to change your column names, like 
df1 = pd.DataFrame({"A":[1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1]})
df2 = pd.DataFrame({"B":[7191, 7275, 9889, 9934, 9633, 9924, 9650, 9341, 8820, 8784, 8869]})

df1.join(df2).corr()

その出力

            A           B
A   1.000000    -0.174287
B   -0.174287   1.000000

コメントでpiRSquaredによって示唆されるように、あなたも使用することができdf1.corrwith(df2)、単一の値を返すように。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=285145&siteId=1