python seaborn 热图_使用python和seaborn从数据帧生成热图

我是Python的新手,也是seaborn的新手 .

我有一个名为df的pandas数据框,如下所示:

TIMESTAMP ACT_TIME_AERATEUR_1_F1 ACT_TIME_AERATEUR_1_F2 ACT_TIME_AERATEUR_1_F3 ACT_TIME_AERATEUR_1_F4 ACT_TIME_AERATEUR_1_F5 ACT_TIME_AERATEUR_1_F6

2015-08-01 23:00:00 80 0 0 0 10 0

2015-08-01 23:20:00 60 0 20 0 10 10

2015-08-01 23:40:00 80 10 0 0 10 10

2015-08-01 00:00:00 60 10 20 40 10 10

df.info()

RangeIndex: 38840 entries, 0 to 38839

Data columns (total 7 columns):

TIMESTAMP 38840 non-null datetime64[ns]

ACT_TIME_AERATEUR_1_F1 38696 non-null float64

ACT_TIME_AERATEUR_1_F3 38697 non-null float64

ACT_TIME_AERATEUR_1_F5 38695 non-null float64

ACT_TIME_AERATEUR_1_F6 38695 non-null float64

ACT_TIME_AERATEUR_1_F7 38693 non-null float64

ACT_TIME_AERATEUR_1_F8 38696 non-null float64

dtypes: datetime64[ns](1), float64(6)

memory usage: 2.1 MB

我尝试使用以下代码进行热图:

data = sns.load_dataset("df")

# Draw a heatmap with the numeric values in each cell

sns.heatmap(data, annot=True, fmt="d", linewidths=.5)

但它不起作用你能帮我pelase找到错误吗?

谢谢

Edit 首先,我从csv文件加载数据帧:

df1 = pd.read_csv('C:/Users/Demonstrator/Downloads/Listeequipement.csv',delimiter=';', parse_dates=[0], infer_datetime_format = True)

然后,我只选择日期为“2015-08-01 23:10:00”和“2015-08-02 00:00:00”的行

import seaborn as sns

df1['TIMESTAMP']= pd.to_datetime(df1_no_missing['TIMESTAMP'], '%d-%m-%y %H:%M:%S')

df1['date'] = df_no_missing['TIMESTAMP'].dt.date

df1['time'] = df_no_missing['TIMESTAMP'].dt.time

date_debut = pd.to_datetime('2015-08-01 23:10:00')

date_fin = pd.to_datetime('2015-08-02 00:00:00')

df1 = df1[(df1['TIMESTAMP'] >= date_debut) & (df1['TIMESTAMP'] < date_fin)]

Then, construct the heatmap :

sns.heatmap(df1.iloc[:,2:],annot=True, fmt="d", linewidths=.5)

我收到此错误:

TypeError Traceback(最近一次调用最后一次)

()中的

7 df1 = df1 [(df1 ['TIMESTAMP']> = date_debut)&(df1 ['TIMESTAMP']

8

----> 9 sns.heatmap(df1.iloc [:,2:],annot = True,fmt =“d”,linewidths = .5)

C:\ Users \ Demonstrator \ Anaconda3 \ lib \ site-packages \ seaborn \ matrix.py in

热图(数据,vmin,vmax,cmap,center,robust,annot,fmt,annot_kws,linewidths,linecolor,cbar,cbar_kws,cbar_ax,square,ax,xticklabels,yticklabels,mask,** kwargs)483 plotter = _HeatMapper(data ,vmin,vmax,cmap,center,robust,annot,fmt,484 annot_kws,cbar,cbar_kws,xticklabels, - > 485 yticklabels,mask)486 487#在这里添加pcolormesh kwargs C:\ Users \ Demonstrator \ Anaconda3 \ lib \ site-packages \ seaborn \ matrix.py in

init(self,data,vmin,vmax,cmap,center,robust,annot,fmt,annot_kws,cbar,cbar_kws,xticklabels,yticklabels,mask)165#确定颜色映射166的良好默认值self._determine_cmap_params(plot_data,vmin, vmax, - > 167 cmap,center,robust)168 169#整理出注释C:\ Users \ Demonstrator \ Anaconda3 \ lib \ site-packages \ seaborn \ matrix.py in

_determine_cmap_params(self,plot_data,vmin,vmax,cmap,center,robust)202 cmap,center,robust):203“”“使用一些启发式方法为colorbar和range设置好的默认值 . ”“” - > 204 calc_data = plot_data .data [~np.isnan(plot_data.data)] 205如果vmin为None:206 vmin = np.percentile(calc_data,2)if robust else calc_data.min()TypeError:ufunc'isnan'不支持输入类型,输入无法安全地强制转换为任何支持的类型

根据施法规则''安全''

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值