it-swarm.com.ru

Python Pandas Фрейм данных сохранить как HTML-страницу

Я пытаюсь сохранить определенный в Python Pandas Фрейм данных в виде HTML-страницы. Кроме того, я хотел бы, чтобы эта таблица сохранялась как возможность HTML-таблицы фильтроваться по значению любого столбца. Можете ли вы предоставить возможное решение? В финале таблица должна быть сохранена в виде HTML-страницы. Я хотел бы включить этот код в мой код Python. Спасибо

14
Felix

Вы можете использовать pandas.DataFrame.to_html() .

Пример:

>>> import numpy as np
>>> from pandas import *
>>> df = DataFrame({'foo1' : np.random.randn(2),
                    'foo2' : np.random.randn(2)})
>>> df.to_html('filename.html')

Это сохранит следующий HTML-код в filename.html.

Результат:

<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>foo1</th>
      <th>foo2</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>0</th>
      <td>-0.223430</td>
      <td>-0.904465</td>
    </tr>
    <tr>
      <th>1</th>
      <td>0.317316</td>
      <td>1.321537</td>
    </tr>
  </tbody>
</table>

30
Sait

.to_html () также может быть использован для создания строки HTML

import io
import pandas as pd
from numpy.random import randn

df = pd.DataFrame(
    randn(5, 4),
    index = 'A B C D E'.split(),
    columns = 'W X Y Z'.split()
)

str_io = io.StringIO()

df.to_html(buf=str_io, classes='table table-striped')

html_str = str_io.getvalue()

print(html_str)

<table border="1" class="dataframe table table-striped">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>W</th>
      <th>X</th>
      <th>Y</th>
      <th>Z</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>A</th>
      <td>0.302665</td>
      <td>1.693723</td>
      <td>-1.706086</td>
      <td>-1.159119</td>
    </tr>
    <tr>
      <th>B</th>
      <td>-0.134841</td>
      <td>0.390528</td>
      <td>0.166905</td>
      <td>0.184502</td>
    </tr>
    <tr>
      <th>C</th>
      <td>0.807706</td>
      <td>0.072960</td>
      <td>0.638787</td>
      <td>0.329646</td>
    </tr>
    <tr>
      <th>D</th>
      <td>-0.497104</td>
      <td>-0.754070</td>
      <td>-0.943406</td>
      <td>0.484752</td>
    </tr>
    <tr>
      <th>E</th>
      <td>-0.116773</td>
      <td>1.901755</td>
      <td>0.238127</td>
      <td>1.996652</td>
    </tr>
  </tbody>
</table>

0
Valery Ramusik