Стиль HTML-таблицы из панд - PullRequest
       4

Стиль HTML-таблицы из панд

0 голосов
/ 28 августа 2018

У меня есть длинный фрейм данных, который я хочу отправить пользователю Gmail. Метод, который я использовал с pd.to_html(). Хотя я добился успеха, таблица действительно длинная и не очень удобочитаемая. Во-первых, с таким количеством строк и столбцов (это таблица уровней с несколькими столбцами), имена индексов и столбцов исчезают, и вы больше не можете знать, откуда берется каждый столбец. Кроме того, я упускаю возможность отфильтровать таблицу в зависимости от того, что я ищу.

Я видел что-то вроде http://tablefilter.free.fr для добавления в вашу HTML-таблицу, но я не знаю, как заставить это работать с моим сценарием, так как это, вероятно, будет отображаться в учетной записи Gmail, а не в браузере (возможно, решение отправляет HTML-файл вместо вложенной таблицы.

Кроме того, я бы хотел, чтобы индекс и столбец были статическими, если я прокручиваю вниз или в сторону, я все еще могу их видеть.

Как это можно реализовать?

РЕДАКТИРОВАТЬ: Я нашел эту тему, которая более или менее делает то, что я ищу. Тем не менее, я не знаю, как реализовать это на pd.to_html() Заголовок таблицы остается фиксированным сверху, когда пользователь прокручивает его вне поля зрения с помощью jQuery

РЕДАКТИРОВАТЬ 2: я сделал finalframe.to_html (), и здесь есть крошечная часть строки, которая включает заголовок и первую строку данных.

'<table border="1" class="dataframe">\n  <thead>\n    <tr>\n      <th>generales</th>\n      <th>fecha</th>\n      <th>competicion</th>\n      <th>local</th>\n      <th>visitante</th>\n      <th>tracker</th>\n      <th colspan="44" halign="left">local</th>\n      <th colspan="44" halign="left">visitante</th>\n      <th>Predicciones</th>\n    </tr>\n    <tr>\n      <th>h/a o totales</th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th colspan="22" halign="left">h/a</th>\n      <th colspan="22" halign="left">totales</th>\n      <th colspan="22" halign="left">h/a</th>\n      <th colspan="22" halign="left">totales</th>\n      <th></th>\n    </tr>\n    <tr>\n      <th>tipo de dato</th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th colspan="14" halign="left">medias</th>\n      <th colspan="8" halign="left">porcentajes</th>\n      <th colspan="14" halign="left">medias</th>\n      <th colspan="8" halign="left">porcentajes</th>\n      <th colspan="14" halign="left">medias</th>\n      <th colspan="8" halign="left">porcentajes</th>\n      <th colspan="14" halign="left">medias</th>\n      <th colspan="8" halign="left">porcentajes</th>\n      <th></th>\n    </tr>\n    <tr>\n      <th>dato</th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th></th>\n      <th>partidos</th>\n      <th>puntos por partido</th>\n      <th>Goles a favor</th>\n      <th>desv GAF</th>\n      <th>Goles en contra</th>\n      <th>desv GEC</th>\n      <th>Goles HT favor</th>\n      <th>desv GHTF</th>\n      <th>Goles HT contra</th>\n      <th>desv GHTC</th>\n      <th>Corner a favor</th>\n      <th>desv CAF</th>\n      <th>Corner en contra</th>\n      <th>desv CEC</th>\n      <th>o2,5</th>\n      <th>o3,5</th>\n      <th>Gol al HT a favor</th>\n      <th>Gol al HT en contra</th>\n      <th>Gol al HT</th>\n      <th>fts</th>\n      <th>cs</th>\n      <th>bts</th>\n      <th>partidos</th>\n      <th>puntos por partido</th>\n      <th>Goles a favor</th>\n      <th>desv GAF</th>\n      <th>Goles en contra</th>\n      <th>desv GEC</th>\n      <th>Goles HT favor</th>\n      <th>desv GHTF</th>\n      <th>Goles HT contra</th>\n      <th>desv GHTC</th>\n      <th>Corner a favor</th>\n      <th>desv CAF</th>\n      <th>Corner en contra</th>\n      <th>desv CEC</th>\n      <th>o2,5</th>\n      <th>o3,5</th>\n      <th>Gol al HT a favor</th>\n      <th>Gol al HT en contra</th>\n      <th>Gol al HT</th>\n      <th>fts</th>\n      <th>cs</th>\n      <th>bts</th>\n      <th>partidos</th>\n      <th>puntos por partido</th>\n      <th>Goles a favor</th>\n      <th>desv GAF</th>\n      <th>Goles en contra</th>\n      <th>desv GEC</th>\n      <th>Goles HT favor</th>\n      <th>desv GHTF</th>\n      <th>Goles HT contra</th>\n      <th>desv GHTC</th>\n      <th>Corner a favor</th>\n      <th>desv CAF</th>\n      <th>Corner en contra</th>\n      <th>desv CEC</th>\n      <th>o2,5</th>\n      <th>o3,5</th>\n      <th>Gol al HT a favor</th>\n      <th>Gol al HT en contra</th>\n      <th>Gol al HT</th>\n      <th>fts</th>\n      <th>cs</th>\n      <th>bts</th>\n      <th>partidos</th>\n      <th>puntos por partido</th>\n      <th>Goles a favor</th>\n      <th>desv GAF</th>\n      <th>Goles en contra</th>\n      <th>desv GEC</th>\n      <th>Goles HT favor</th>\n      <th>desv GHTF</th>\n      <th>Goles HT contra</th>\n      <th>desv GHTC</th>\n      <th>Corner a favor</th>\n      <th>desv CAF</th>\n      <th>Corner en contra</th>\n      <th>desv CEC</th>\n      <th>o2,5</th>\n      <th>o3,5</th>\n      <th>Gol al HT a favor</th>\n      <th>Gol al HT en contra</th>\n      <th>Gol al HT</th>\n      <th>fts</th>\n      <th>cs</th>\n      <th>bts</th>\n      <th>Poisson o25</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>2018/08/28 10:30</td>\n      <td>ALG U21</td>\n      <td>CS Constantine U21</td>\n      <td>JS Saoura U21</td>\n      <td>1611191</td>\n      <td>1</td>\n      <td>3.000000</td>\n      <td>2.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>2.000000</td>\n      <td>0.000000</td>\n      <td>4.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>1</td>\n      <td>3.000000</td>\n      <td>2.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>2.000000</td>\n      <td>0.000000</td>\n      <td>4.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>1</td>\n      <td>0.000000</td>\n      <td>0.000000</td>\n      <td>0.000000</td>\n      <td>3.000000</td>\n      <td>0.000000</td>\n      <td>0.00</td>\n      <td>0.000000</td>\n      <td>2.000000</td>\n      <td>0.000000</td>\n      <td>6.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>0.000000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>0.000000</td>\n      <td>0.000000</td>\n      <td>2</td>\n      <td>1.500000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>1.500000</td>\n      <td>1.500000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>1.000000</td>\n      <td>4.500000</td>\n      <td>1.500000</td>\n      <td>2.500000</td>\n      <td>1.500000</td>\n      <td>0.500000</td>\n      <td>0.000000</td>\n      <td>0.500000</td>\n      <td>0.500000</td>\n      <td>1.000000</td>\n      <td>0.50</td>\n      <td>0.500000</td>\n      <td>0.000000</td>\n      <td>0.576810</td>\n    </tr>\n'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...