没错!4 个 Python 函数就可以让你的数据框「骚气满满」!

Pandas 数据帧是数据科学家分析数据时使用最多的工具。虽然其主要功能是放置数据并进行数据分析,但我们仍然可以为数据框样式进行很多优化,一方面可以让数据更加美观,另一方面突出主题。

让我们以如下数据集为例,来一步一步的讲解吧!

import pandas as pd
import seaborn as sns
planets = pd.read_csv('seaborn-data-master/planets.csv')
planets.head()

在这里插入图片描述

我们可以像下面一样设置我们的 Pandas 数据框样式。
在这里插入图片描述

在上图中,它看起来五颜六色,是因为我把所需要的东西都放在里面。在这里,我使用了日常工作中经常使用的 4 个函数,现在分享给大家。

1、隐藏函数

有时,当你进行数据分析并向对方呈现结果时,只想显示最重要的方面。当我向非技术人员展示我的数据时,对于非必要展示的索引,我会隐藏掉,此时可以这样处理。

planets.head(10).style.hide_index()

在这里插入图片描述

就像上面这样,我们隐藏了索引。这是一件简单的事情。此外,我们可以尝试使用隐藏不必要的列。

planets.head(10).style.hide_index().hide_columns(['method','year'])

在这里插入图片描述

2、高亮函数

如果我们程序数据框时,只突出显示重要的数字,例如最高数字。在这种情况下,我们可以使用内置方法突显它。

planets.head(10).style.highlight_max(color = 'yellow')

在这里插入图片描述

在上面的数据框中,我们用黄色突出显示每列中的最大数字。如果想突出显示最小数字,我们可以使用以下代码进行。

planets.head(10).style.highlight_min(color = 'lightblue')

在这里插入图片描述

如果你标注想要最大值和最小值

planets.head(10).style.highlight_max(color='yellow').highlight_min(color = 'lightblue')

在这里插入图片描述

也可以突出显示每一行的最小或最大数字,而不是每列。我在下面的代码中显示它。

planets.head(10).style.highlight_max(color = 'yellow', axis =1)

在这里插入图片描述

我们也可以突出显示null 值。

planets.head(10).style.highlight_null(null_color = 'red')

在这里插入图片描述

3、渐变函数

在呈现数据的同时,我们还可以使用渐变颜色作为呈现数据的主要方式。我经常以背景颜色显示数据,以突出显示哪个数字位于较低区域,而哪个数字位于较高区域中。让我们使用以下代码的示例。

planets.head(10).style.background_gradient(cmap = 'Blues')

在这里插入图片描述

使用 background_gradient 函数,我们可以将数据框着色为渐变。颜色取决于 cmap 参数。我们还可以使用条形图作为渐变背景颜色。让我在下面的示例中显示它。

planets.head(10).sort_values(by = 'year').style.bar(color= 'lightblue')

在这里插入图片描述

4、自定义功能

如果你希望对数据框进行更具体的设置,实际上可以这样做。我们可以将样式函数传递到以下方法之一:

  • Styler.applymap:元素
  • Styler.apply:列、行、表

举个示例,假设我设置一个阈值,低于 20 的数字都应该是红色的。我们可以使用以下代码来做到这一点。

def color_below_20_red(value):
    if type(value) == type(''):
        return 'color:black'
    else:
        color = 'red' if value <= 20 else 'black'
        return 'color: {}'.format(color)

planets.head(10).style.applymap(color_below_20_red)

在这里插入图片描述

结论

我已经展示了在设置数据框样式时,要使用的前 4 个函数。如果你想了解更多有关数据框的样式,可以阅读如下链接,此外,关注我,更多好玩、使用的技能等着你来发现

https://pandas.pydata.org/docs/user_guide/style.html#Builtin-styles

技术交流

欢迎转载、收藏本文,码字不易,有所收获点赞支持一下!

为方便进行学习交流,本号开通了技术交流群,添加方式如下:

直接添加小助手微信号:pythoner666,备注:CSDN+python,或者按照如下方式添加均可!
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值