我编写了一个python脚本来读取通过CSV文本文件提供的距离矩阵。这个距离矩阵显示了不同动物物种之间的差异,我正在尝试使用另一条仅有一排订购信息的CSV文件中的数据,以不同的方式(饮食,家族,属等)对它们进行排序。使用的代码在这里:
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as mp
dietCols = pd.read_csv("label_diet.txt", header=None)
df = pd.read_csv("distance_matrix.txt", header=None)
ax = sns.heatmap(df)
fig = ax.get_figure()
fig.savefig("fig1.png")
mp.clf()
dfDiet = pd.read_csv("distance_matrix.txt", header=None, names=dietCols)
ax2 = sns.heatmap(dfDiet, linewidths=0)
fig2 = ax2.get_figure()
fig2.savefig("fig2.png")
mp.clf()
绘制距离矩阵时,原始图形如下所示:
但是,当从文本文件中读取其他命名信息时,生成的图形只有一列,看起来像这样:
您可以看到矩阵数据被用作行标签,但我不确定为什么会这样。提供的某些行没有值,因此将其列为“ NaN”,因此我不确定这是否会引起问题。有没有简单的方法可以使用外部文件订购此距离矩阵?任何帮助将不胜感激!