我目前正在尝试计算约 30k 行矩阵的协方差矩阵(所有值都在 [0,1] 范围内),并且需要很长时间(我已经让它运行了一个多小时,但它仍然没有'未完成)。
我在较小的示例(7k 行矩阵)中注意到的一件事是输出的值具有荒谬的有效数字(例如〜10 ^ 32)并且可能会减慢速度(并增加文件大小)-有什么办法吗限制这个?
我一直在一个简单的数据帧上使用 numpys 协方差方法:
import numpy as np
import pandas as pd
import sklearn as sk
df = pd.read_csv('gene_data/genetic_data25.csv')
df = df.set_index('ID_REF')
df = (df-df.min(axis = 0))/(df.max(axis = 0)-df.min(axis = 0))
cov = np.cov(df)
cov = pd.DataFrame(cov)
cov.to_csv('/gemnetics/cov_matrix.csv')