Как создать гиперссылку в новом столбце DataFrame?
Есть DataFrame с двумя столбцами: заголовком статьи и ссылкой на нее.
Как можно получить третий столбец, где текстом будет заголовок статьи, но будет иметь гиперссылку на статью?
Ответы (2 шт):
Автор решения: MarianD
→ Ссылка
Пусть df такое:
name link 0 Total Commander www.ghisler.com 1 Pandas pandas.pydata.org
Команда:
df["hypertext"] = '<a href="' + df.link + '">' + df.name + '</a>'
Результат:
name link hypertext 0 Total Commander www.ghisler.com <a href="www.ghisler.com">Total Commander</a> 1 Pandas pandas.pydata.org <a href="pandas.pydata.org">Pandas</a>
Примечание:
Теперь, когда вы хотите изобразить таблицу с работающими гиперссылками в Jupyter Notebook, напишите
from IPython.display import HTML
HTML(df.to_html(escape=False))
как можете видеть и с тем, что вы получите:
Или можете сделать
print(df.to_html(escape=False))
получая HTML код:
<table border="1" class="dataframe">
<thead>
<tr style="text-align: right;">
<th></th>
<th>name</th>
<th>link</th>
<th>hypertext</th>
</tr>
</thead>
<tbody>
<tr>
<th>0</th>
<td>Total Commander</td>
<td>www.ghisler.com</td>
<td><a href="www.ghisler.com">Total Commander</a></td>
</tr>
<tr>
<th>1</th>
<td>Pandas</td>
<td>pandas.pydata.org</td>
<td><a href="pandas.pydata.org">Pandas</a></td>
</tr>
</tbody>
</table>
который вы можете прямо запустить (клик на «Выполнить код» выше) или вставить в ваш HTML файл.
Автор решения: MaxU
→ Ссылка
Пример данных позаимствован у @MarianD:
df["hypertext"] = df["link"].map('<a href="{}">'.format) + df["name"] + "</a>"
Результат:
In [130]: df
Out[130]:
name link hypertext
0 Total Commander www.ghisler.com <a href="www.ghisler.com">Total Commander</a>
1 Pandas pandas.pydata.org <a href="pandas.pydata.org">Pandas</a>
