pandas.io.formats.style.Styler.apply # 造型器。apply ( func , axis = 0 , subset = None , ** kwargs ) [来源] # 按列、按行或按表应用 CSS 样式函数。 用结果更新 HTML 表示。 参数: 函数函数func如果在 [0,1] 中,则应采用一个 Seriesaxis并返回一个相同长度的类似列表的对象,或者一个序列,不一定具有相同的长度,并考虑有效的索引标签subset。 如果是,func则应采用 DataFrame并返回具有相同形状的 ndarray 或 DataFrame,不一定具有相同的形状,并考虑有效的索引和列标签。axisNonesubset 在 1.3.0 版本中进行了更改。 在 1.4.0 版本中进行了更改。 轴{0 或 'index', 1 或 'columns', None}, 默认 0使用一次应用于每列(axis=0或'index')、每行(axis=1或)或整个 DataFrame 。'columns'axis=None 子集标签,类似数组,IndexSlice,可选DataFrame.loc[<subset>]的有效 2d 输入,或者,如果是 1d 输入或单个键,则为DataFrame.loc[:, <subset>],其中列优先,以限制data在应用之前功能。 **夸格斯字典传递到func. 返回: 造型器 也可以看看 Styler.map_index将 CSS 样式函数应用于标题元素。 Styler.apply_index将 CSS 样式函数逐级应用于标题。 Styler.map按元素应用 CSS 样式函数。 笔记 输出的元素func应该是 CSS 样式作为字符串,格式为 'attribute: value;属性2:值2; ...' 或者,如果没有任何内容应用于该元素,则为空字符串或None. 这与 类似DataFrame.apply,不同之处在于axis=None 该函数立即应用于整个 DataFrame,而不是逐列或逐行。 例子 >>> def highlight_max(x, color): ... return np.where(x == np.nanmax(x.to_numpy()), f"color: {color};", None) >>> df = pd.DataFrame(np.random.randn(5, 2), columns=["A", "B"]) >>> df.style.apply(highlight_max, color='red') >>> df.style.apply(highlight_max, color='blue', axis=1) >>> df.style.apply(highlight_max, color='green', axis=None) 用于subset将应用程序限制为单列或多列 >>> df.style.apply(highlight_max, color='red', subset="A") ... >>> df.style.apply(highlight_max, color='red', subset=["A", "B"]) ... 使用 2d 输入来subset选择行和列 >>> df.style.apply(highlight_max, color='red', subset=([0, 1, 2], slice(None))) ... >>> df.style.apply(highlight_max, color='red', subset=(slice(0, 5, 2), "A")) ... 使用返回长度不等但包含有效索引标签的 Series / DataFrame 的函数 >>> df = pd.DataFrame([[1, 2], [3, 4], [4, 6]], index=["A1", "A2", "Total"]) >>> total_style = pd.Series("font-weight: bold;", index=["Total"]) >>> df.style.apply(lambda s: total_style) 有关更多详细信息,请参阅表格可视化用户指南。