2
我有一個數據幀表示一個協方差矩陣s.th.這樣將Pandas Dataframe轉換爲RCV
names = ['AA','BB','CC','DD','EE']
x_ = np.random.normal(size=5)
y_ = np.random.normal(size=5)
z = np.vstack((x_, y_))
cov_mat = np.cov(z.T)
cov_mat = np.triu(cov_mat, k=0)
cov_mat_df = pd.DataFrame(cov_mat)
cov_mat_df.index = names
cov_mat_df.columns = names
導致
AA BB CC DD EE
AA 0.271191 -1.064020 -0.311409 0.834741 -0.464261
BB 0.000000 4.174687 1.221814 -3.275110 1.821531
CC 0.000000 0.000000 0.357591 -0.958533 0.533111
DD 0.000000 0.000000 0.000000 2.569378 -1.429021
EE 0.000000 0.000000 0.000000 0.000000 0.794784
我想這個保存爲CSV,而放棄對內存大小的原因全部0的格式如下
Idx1 Idx2 Value
AA AA 0.271191
AA BB -1.064020
AA CC -0.311409
... ... ....
DD EE -1.429021
EE EE 0.794784
我嘗試使用熊貓旋轉功能,但我認爲我需要相反的。
完美的感謝,任何想法,我怎麼能夠無視0爲好,我用np.triu只得到的上半矩陣 – ThatQuantDude