Looking to create a table like this in Jupiter Notebook based on a pandas DataFrame.虽然styler在如何格式化数据方面做了很多工作,但在excel/word中通常做的很多工作是格式化文本以使其快速可读。我的目标是将excel/word完全从流程中删除,并使用pandas styler总结整个工作流。我发现关于如何格式化索引中数据的文本值/列宽等的文档非常有限。我不熟悉HTML/CSS,我正在学习。我所尝试的似乎对桌子的显示并没有影响。这是我的数据和我尝试过的一些代码:
from faker import Faker
faker = Faker()
Faker.seed(4321)
dat = pd.DataFrame(
{'WorkFlow':[ 'Macro Economic Changes'
,'Industry Changes'
,'Federal Legislative Changes'
,'Model Development'
,'Model Validation'
,'Model Production Testing'
,'Market Research'
,'Marketing Plan'
,'Marketing Material'
,'Client Solicitation']})
choices = ['Marketing','Management','Research']
conditions = [dat['WorkFlow'].str.find('Market')>-1
,dat['WorkFlow'].str.find('Change')>-1
,dat['WorkFlow'].str.find('Model' )>-1]
dat['Dept']= np.select(conditions,choices,'BusinessDev')
dat['AssignedAssociate'] =dat['WorkFlow'].apply(lambda x: faker.name())
dat['StatusReport']=np.array(['Green']*5+['Yellow']+['Green']*3+['Red'])
dat['StatusReport']= dat['StatusReport']+": Due to ...sdf asdfasf asdfasdfas asdgfasdfasdfsadfsadf. asdfsafsaf asdfsafsadf"
dat.set_index(['Dept','WorkFlow'],inplace=True)
dat
dat.style.set_table_styles(
# { 'selector': 'th.col_heading'
# , 'props' : 'text-align: center;' },
{'selector' : 'th.index_name.'
, 'props' : [('text-align','center')
,('font-weight','bold')
,('font-style','italic')
,('width','2%')
,('overflow-wrap','break-word')]} )
单元格合并仅适用于多索引:
例如:
您可以对数据单元格和索引单元格进行一些基本样式设置,如下所示:
相关问题 更多 >
编程相关推荐