w3resource

Pandas styling Exercises: Write a Pandas program to highlight dataframe’s specific columns with different colors


8. Highlight Specific Columns with Different Colors

Create a dataframe of ten rows, four columns with random values. Write a Pandas program to highlight dataframe’s specific columns with different colors.

Sample Solution :

Python Code :

import pandas as pd
import numpy as np
np.random.seed(24)
df = pd.DataFrame({'A': np.linspace(1, 10, 10)})
df = pd.concat([df, pd.DataFrame(np.random.randn(10, 4), columns=list('BCDE'))],
               axis=1)
df.iloc[0, 2] = np.nan
df.iloc[3, 3] = np.nan
df.iloc[4, 1] = np.nan
df.iloc[9, 4] = np.nan
print("Original array:")
print(df)
print("\nDifferent background color:")
coldict = {'B':'red', 'D':'yellow'}

def highlight_cols(x):
    #copy df to new - original data are not changed
    df = x.copy()
    #select all values to default value - red color
    df.loc[:,:] = 'background-color: red'
    #overwrite values grey color
    df[['B','C', 'E']] = 'background-color: grey'
    #return color df
    return df    

df.style.apply(highlight_cols, axis=None)

Original array:

Original array:
      A         B         C         D         E
0   1.0  1.329212       NaN -0.316280 -0.990810
1   2.0 -1.070816 -1.438713  0.564417  0.295722
2   3.0 -1.626404  0.219565  0.678805  1.889273
3   4.0  0.961538  0.104011       NaN  0.850229
4   5.0       NaN  1.057737  0.165562  0.515018
5   6.0 -1.336936  0.562861  1.392855 -0.063328
6   7.0  0.121668  1.207603 -0.002040  1.627796
7   8.0  0.354493  1.037528 -0.385684  0.519818
8   9.0  1.686583 -1.325963  1.428984 -2.089354
9  10.0 -0.129820  0.631523 -0.586538       NaN

Different background color:

Sample Output:

Python Pandas: pandas styling exercise-8 output

Download the Jupyter Notebook from here.


For more Practice: Solve these Related Problems:

  • Write a Pandas program to apply different background colors to two specific columns in a dataframe using custom styling.
  • Write a Pandas program to set distinct colors for two selected columns by mapping each to a unique style function.
  • Write a Pandas program to create a style function that highlights one column in blue and another in green simultaneously.
  • Write a Pandas program to implement conditional formatting that assigns different colors to specified columns based on their header names.

Go to:


Previous: Create a dataframe of ten rows, four columns with random values. Write a Pandas program to highlight dataframe's specific columns.
Next: Create a dataframe of ten rows, four columns with random values. Write a Pandas program to display the dataframe in table style.

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?



Follow us on Facebook and Twitter for latest update.