【问题标题】:Unable to plot all variables of a dataset Seaborn heat map无法绘制数据集 Seaborn 热图的所有变量
【发布时间】:2019-10-29 21:07:47
【问题描述】:
plt.figure(figsize=(10,10))
sns.heatmap(df.corr())

数据有 14 个变量,但只有前 4 个被绘制在热图上。是否与其余变量中的缺失值有关?

【问题讨论】:

  • 检查所有列的数据类型。
  • 是的,其中一些是字符串变量,但大多数是数字。你也知道如何处理只是空白的值,我的意思是没有 Nan 或任何只是空白的 ''。这会影响热图吗?
  • @DhrumiVaishnav 你能提供你的数据示例吗?
  • pd.to_numeric 在所有字符串列上errors='coerce'

标签: python python-3.x seaborn data-science


【解决方案1】:

如果我没记错的话,除非你的字符串值是分类的(检查 python to_categorical 这意味着每个 0 和 1 字符串的新列),你不能使用 .corr() 关联它们,因为你是在第二个代码行提到sns.heatmap(df.corr())。这意味着制作热图的功能(变量)将更少。

查看这些示例:

# first import libraries
import pandas as pd
import numpy as np

将返回空,有字符串:

values = np.transpose([[3,'dos',9], ['cuatro',9, 7], [4,5,6], [4,5,6]])
cols = ["first", 'second','third','fourth']
print(pd.DataFrame(values, columns=cols).corr())

将实现您所需要的:

# only numbers for the values
values = np.transpose([[1,3,9], [10,20, 7], [4,5,6], [4,5,6]])
cols = ["first", 'second','third','fourth']
print(pd.DataFrame(values, columns=cols).corr())

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-10
    • 2022-01-21
    • 1970-01-01
    • 2021-07-24
    • 2018-11-23
    • 2018-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多