Issue
I have a dataframe df of shape (100,10) and a dictionary columns_to_color for each row.
columns_to_color = {
0: ['col1', 'col2', 'col9'], # Columns 1, 2 and 9 should be colored for row 0
1: ['col1', 'col5', 'col8'], # Columns 1, 5 and 8 should be colored for row 1
2: ['col3', 'col4', 'col7'], # Columns 3, 4 and 7 should be colored for row 2
.......
How do I color those particular cell for each row of that column? and then save it to excel?
Solution
You could use .style.apply()
like so:
df.style.apply(
lambda row: [
'font-weight: bold' if col in columns_to_color[row.name] else ''
for col in row.index],
axis=1)
(I'm using bold just for convenience.)
Then to convert to Excel, use .to_excel()
.
Example:
df = pd.DataFrame({f'col{n}': range(10*n, 10*n + 3) for n in range(10)})
After apply
(in my IDE):
Answered By - wjandrea
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.