标签: python pandas numpy matrix
我有一个大型的pandas DataFrame - 这是一个带有标题和索引的方形矩阵,我正在尝试使用pandas'能够计算该矩阵的逆矩阵,而不是直接通过numpy。
我想留在一个pandas框架中,以保持我的数据帧的标题。我可以使用pd.as_matrix函数,但是把它变成了一个ndarray,我放弃了标题提供的所有信息。
有什么建议吗?
答案 0 :(得分:15)
考虑数据框df
df
np.random.seed([3,1415]) df = pd.DataFrame(np.random.rand(3, 3), list('abc'), list('xyz')) df
计算逆(用numpy,让我们不要疯狂)
df_inv = pd.DataFrame(np.linalg.pinv(df.values), df.columns, df.index) df_inv
注意我使用pinv作为伪逆
pinv
然后检查
df_inv.dot(df)