gpt4 book ai didi

python - 存储相关矩阵的上/下半部分

转载 作者:太空宇宙 更新时间:2023-11-04 02:03:23 24 4
gpt4 key购买 nike

将相关矩阵的上/下半部分存储到文件的最{ (1) 内存效率 (2) 时间效率 (3) 易于访问* } 的方法是什么python 中?
(“易于访问”是指能够从文件中读取并使用 matplotlib/seaborn 绘制相关矩阵)例如,对于下面的相关矩阵:

    C1   C2   C3   C4
C1 1.0 0.6 0.7 0.5
C2 0.6 1.0 0.4 0.9
C3 0.7 0.4 1.0 0.3
C4 0.5 0.9 0.3 1.0

我想将以下数字存储到一个文件中。

    C2   C3   C4
C1 0.6 0.7 0.5
C2 0.4 0.9
C3 0.3

    C1   C2   C3  
C2 0.6
C3 0.7 0.4
C4 0.5 0.9 0.3

(我想将它存储为 csv/tsv 文件,但它仍然会占用空白字符的内存,而空白字符将存在于矩阵的另一半。)

最佳答案

你需要这样的东西:

matrix = np.array([[1, 0.6, 0.7, 0.5],
[0.6, 1, 0.4, 0.9],
[0.7, 0.4, 1, 0.3],
[0.5, 0.9, 0.3, 1]])

ut = np.triu(matrix, k=1)
lt = np.tril(matrix, k=-1)

ut = np.where(ut==0, np.nan, ut)
lt = np.where(lt==0, np.nan, lt)

np.savetxt("upper.csv", ut, delimiter=",")
np.savetxt("lower.csv", lt, delimiter=",")

关于python - 存储相关矩阵的上/下半部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55254507/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com