龙空技术网

厉害了,Pandas 的表格居然能变得怎么漂亮

编程派 1267

前言:

现在看官们对“python高亮输出”都比较注意,朋友们都想要了解一些“python高亮输出”的相关内容。那么小编也在网摘上搜集了一些对于“python高亮输出””的相关资讯,希望小伙伴们能喜欢,小伙伴们一起来了解一下吧!

优质文章,第一时间送达!

在使用Pandas分析数据时,我们可能经常需要来高亮显示某些数据,以便一眼看出这些数据的不同之处,今天小编就来分享一下如何在“Pandas”的表格当中高亮某些数据,通过这篇文章,读者们可以知道怎么去

高亮某些符合条件的值

高亮最大、最小、空值、特定值

在表格当中绘制直方图

绘制热力图

首先我们先要导入需要用到的模块,并且创建一个表格里面包含了用“random”模块建立的随机数,当然另外还有空值

import pandas as pdimport numpy as npimport math

np.random.seed(25)df = pd.DataFrame(np.random.randn(10, 5), columns=list('ABCDE'))

df.iloc[3, 3] = np.nandf.iloc[0, 1] = np.nandf.iloc[2, 0] = np.nandf.iloc[4, 2] = np.nandf.iloc[5, 4] = np.nan

表格如下图所示

我们来高亮某些符合条件的数据,例如我们想要将空值高亮成蓝色,而将小于0的数据高亮成红色,而将大于0的数据高亮成绿色,我们定义一个函数,里面包含着上述的逻辑,然后通过“applymap”将我们定义好的函数用在表格上的数据当中,

def apply_colour(value): if math.isnan(value): colour = '#00B8EA' #Blue elif value < 0: colour = '#FF0000' #Red else: colour = '#008000' #Green return 'color: %s' % colour s = df.style.applymap(apply_colour)s 
最后的结果如下

要是想来高亮最大值、最小值、以及空值,可以用其内置的函数来操作,十分的方便,我们只需要将需要用到的颜色作为参数放入其中即可,

s1 = df.style.highlight_max(color = "yellow")s1

s2 = df.style.highlight_min(color = "orange")s2

s3 = df.style.highlight_(_color='grey')s3

效果如下图表格高亮最大最小值空值

当然我们也可以对指定的几列来进行高亮,例如我们想高亮“C”列、“D”列和“E”列三列中的最大值

sub1 = df.style.highlight_max(subset=['C', 'D', 'E'])sub1

sub2 = df.style.highlight_max(subset=pd.IndexSlice[2:5, ['C', 'D', 'E']])sub2

其效果图如下图所示

SUMMERLesser Heat

但其实我们可以将上述的两种方法结合起来用,既高亮某一列中的最大、最小值,同时将我们定义的函数通过“applymap”方法运用到表格中的数据上去,例如

s = df.style.highlight_max(color = "yellow", subset=['A', 'C']).applymap(apply_colour)s
最后的效果如下图所示

接下来我们来看一下如何在表格当中绘制柱状图,代码如下

s1 = df.style.bar(subset=['A', 'B'], color='#00B8EA') # Blue colours1

s2 = df.style.bar(subset=['A', 'C'], align='mid', color=['#d65f5f', '#5fba7d'])s2

最后出来的效果如下图所示

Interesting同时我们可以在表格当中绘制热力图,代码如下

import seaborn as sns

cm = sns.light_palette("orange", as_cmap=True)s1 = df.style.background_gradient(cmap=cm)s1

s2 = df.style.background_gradient(cmap='PuBu')s2

最后出来的效果图如下所示,

热力图这次的分享就到这里了,希望大家看了之后有所收获

Django 之美

有了这款神器,轻松用 Python 写个 APP

高大上的数学科普视频,敲敲代码就能出来!

Linux 能替代 Windows 吗?

标签: #python高亮输出