将 Pandas 距离矩阵 DataFrame 转换为行
Convert Pandas Distance Matrix DataFrame to Rows
我有一个 pandas DataFrame,其中有 n 个 ID 作为列和索引。有没有一些我不考虑将其转换为 n2 行距离的简单方法?
id1 id2
id1 0 .75
id2 .75 0
到
id1 id2 .75
id1 id1 0
id2 id2 0
id2 id1 .75
您可以使用 stack()
:
>>> df.stack()
id1 id1 0.00
id2 0.75
id2 id1 0.75
id2 0.00
dtype: float64
这将创建一个带有 MultiIndex 的系列 - 原始 DataFrame 中的距离成为值。这适用于任何形状的 DataFrame。
我有一个 pandas DataFrame,其中有 n 个 ID 作为列和索引。有没有一些我不考虑将其转换为 n2 行距离的简单方法?
id1 id2
id1 0 .75
id2 .75 0
到
id1 id2 .75
id1 id1 0
id2 id2 0
id2 id1 .75
您可以使用 stack()
:
>>> df.stack()
id1 id1 0.00
id2 0.75
id2 id1 0.75
id2 0.00
dtype: float64
这将创建一个带有 MultiIndex 的系列 - 原始 DataFrame 中的距离成为值。这适用于任何形状的 DataFrame。