Python 无法绘制一列相对于其他列的热图

Python 无法绘制一列相对于其他列的热图,python,python-3.x,pandas,heatmap,correlation,Python,Python 3.x,Pandas,Heatmap,Correlation,借助以下问题,我尝试了以下方法: import pandas import seaborn as sns dataframe = pandas.read_csv("training.csv", header=0,index_col=0) for a in list(['output']): for b in list(dataframe.columns.values): corr.loc[a, b] = dataframe.corr().loc[a, b]

借助以下问题,我尝试了以下方法:

import pandas
import seaborn as sns 
dataframe = pandas.read_csv("training.csv", header=0,index_col=0)
for a in list(['output']):
    for b in list(dataframe.columns.values):
        corr.loc[a, b] = dataframe.corr().loc[a, b]
        print(b)
print(corr)
sns.heatmap(corr['output'])
我得到了以下错误:

IndexError: Inconsistent shape between the condition and the input (got (8, 1) and (8,))
我不希望将所有值关联热图与所有值关联。我只想得到一列与其他列的相关性

请告诉我我遗漏了什么。

在队列中

sns.heatmap(corr['output'])
corr['output']
是一个
pd.系列
。美国

数据
:矩形数据集

可以强制转换为数据数组的二维数据集。如果提供了数据帧,索引/列信息将用于标记列和行

你写

我不希望将所有值关联热图与所有值关联。我只想得到一列与其他列的相关性

在这种情况下,为什么要绘制热图?你的数据是一维的。您可能希望使用条形图,例如,使用:

排队

sns.heatmap(corr['output'])
corr['output']
是一个
pd.系列
。美国

数据
:矩形数据集

可以强制转换为数据数组的二维数据集。如果提供了数据帧,索引/列信息将用于标记列和行

你写

我不希望将所有值关联热图与所有值关联。我只想得到一列与其他列的相关性

在这种情况下,为什么要绘制热图?你的数据是一维的。您可能希望使用条形图,例如,使用:


您正在尝试从pd.Series构建热图-这不起作用
pd.Series
是一维对象,而seaborn.heatmap()通常用于二维数据结构

sns.heatmap(corr['output']])
-将完成这项工作

df = pd.DataFrame(data=[[1,2,3],[5,4,3],[5,4,12]],index=[0,1,2],columns=['A','B','C'])
df.corr().loc['A',:]
出[13]:

A 1.0

B 1.0

C 0.5

名称:A,数据类型:float64

sns.heatmap(df.corr().loc[['A'],:])

您正试图从pd.Series构建热图-这不起作用
pd.Series
是一维对象,而seaborn.heatmap()通常用于二维数据结构

sns.heatmap(corr['output']])
-将完成这项工作

df = pd.DataFrame(data=[[1,2,3],[5,4,3],[5,4,12]],index=[0,1,2],columns=['A','B','C'])
df.corr().loc['A',:]
出[13]:

A 1.0

B 1.0

C 0.5

名称:A,数据类型:float64

sns.heatmap(df.corr().loc[['A'],:])

通常,当你得到这样的
(8,1)和(8,1)
时,你只需要将
(8,1)
重塑为
(8,1)
。假设数组
X
(n,)
。要使其成为
(n,1)
,那么要么
X.reformate(-1,1)
要么
X[:,np.newaxis]
,但您是否刚刚尝试复制seaborns文档中的示例?谢谢你的回复。我需要检查一下你建议的例子。通常当你得到这样的
(8,1)和(8,1)
时,你只需要将
(8,1)
重塑为
(8,1)
。假设数组
X
(n,)
。要使其成为
(n,1)
,那么要么
X.reformate(-1,1)
要么
X[:,np.newaxis]
,但您是否刚刚尝试复制seaborns文档中的示例?谢谢你的回复。我需要检查一下你建议的例子。谢谢你的回复。现在的情况是,我只使用了一列。但在未来我可能会使用2或3,这是我可能需要热图来判断相关性。谢谢你的回答。现在的情况是,我只使用了一列。但在未来我可能会使用2或3,这是我可能需要热图来判断相关性。谢谢你的回答。这对我很有帮助。我想问一下,当我使用jupyter时,如何增加绘图尺寸?视觉效果太小了,看不见。你能帮我吗?matplotlib.rcParams['figure.figsize']=[30.0,30.0]。您可能还需要设置“lines.linewidth”、“lines.color”、“font.size”、“figure.dpi”和“legend.markerscale”参数谢谢您的帮助。谢谢您的回答。这对我很有帮助。我想问一下,当我使用jupyter时,如何增加绘图尺寸?视觉效果太小了,看不见。你能帮我吗?matplotlib.rcParams['figure.figsize']=[30.0,30.0]。您可能还需要设置“lines.linewidth”、“lines.color”、“font.size”、“figure.dpi”和“legend.markerscale”参数谢谢您的帮助。