您可以使用jQuery做在JavaScript:
$('table tbody tr').filter(':last').css('background-color', '#FF0000')
而且熊貓的較新版本的一類dataframe
向表中添加HTML,所以你可以使用過濾掉只大熊貓表:
$('table.dataframe tbody tr').filter(':last').css('background-color', '#FF0000')
但是,如果你願意,你可以添加你自己的類:
df.to_html(classes='my_class')
甚至多個:
df.to_html(classes=['my_class', 'my_other_class'])
如果您使用這裏的IPython的筆記本是完整的工作示例:
In [1]: import numpy as np
import pandas as pd
from IPython.display import HTML, Javascript
In [2]: df = pd.DataFrame({'a': np.arange(10), 'b': np.random.randn(10)})
In [3]: HTML(df.to_html(classes='my_class'))
In [4]: Javascript('''$('.my_class tbody tr').filter(':last')
.css('background-color', '#FF0000');
''')
或者你甚至可以使用純CSS:
In [5]: HTML('''
<style>
.df tbody tr:last-child { background-color: #FF0000; }
</style>
''' + df.to_html(classes='df'))
可能性是無止境的:)
編輯:創建一個HTML文件
import numpy as np
import pandas as pd
HEADER = '''
<html>
<head>
<style>
.df tbody tr:last-child { background-color: #FF0000; }
</style>
</head>
<body>
'''
FOOTER = '''
</body>
</html>
'''
df = pd.DataFrame({'a': np.arange(10), 'b': np.random.randn(10)})
with open('test.html', 'w') as f:
f.write(HEADER)
f.write(df.to_html(classes='df'))
f.write(FOOTER)
雖然我認爲你的回答是偉大的人誰具有一定的HTML/JS/CSS的經驗,我覺得有人用HTML的經驗是要找到你的解決方案有點壓倒一切。 –
只是有點......我不明白創建一個班級在這裏做什麼。我正在使用python 2.7.5(包含python(x,y)包中的所有包),並從命令提示符運行文件。我在IPython中運行你的例子並得到,我不知道該怎麼做。謝謝你的全面的反應,但! @Viktor –
你是否在shell版本的ipython,ipython qtconsole或ipython notebook中運行你的代碼?你究竟想要完成什麼? –