首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Streamlit中制作DataFrame的超链接可点击单元

在Streamlit中制作DataFrame的超链接可点击单元
EN

Stack Overflow用户
提问于 2022-08-11 18:48:28
回答 1查看 382关注 0票数 0

我试图在一个流光应用程序中显示dataframe (在下面的代码中)。

在木星笔记本中,代码运行成功,没有任何问题。

代码语言:javascript
运行
复制
import pandas as pd

df = pd.DataFrame({
    'name': ['stackoverflow', 'gis stackexchange', 'meta stackexchange'],
    'url': ['https://stackoverflow.com', 'https://gis.stackexchange.com/', 'https://meta.stackexchange.com']
})

def make_clickable(url, name):
    return '<a href="{}" rel="noopener noreferrer" target="_blank">{}</a>'.format(url, name)


df['link'] = df.apply(lambda x: make_clickable(x['url'], x['name']), axis=1)
df.style

木星笔记本的结果

但是,当我尝试在Streamlit应用程序中实现它时(用下面的一行替换最后两行),我会得到一个错误。

代码语言:javascript
运行
复制
st.dataframe(df.style.apply(
    lambda x: make_clickable(x['url'], x['name']), axis=1))

使用Streamlit的结果/错误

ValueError: Function 导致apply方法折叠到一个Series中。通常,这是函数返回单个值的结果,而不是list样的。

你知道怎么解决吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-18 17:52:12

要在Streamlit中呈现HTML,可以使用st.markdown,例如:

代码语言:javascript
运行
复制
return st.markdown('<a href="{}" rel="noopener noreferrer" target="_blank">{}</a>'.format(url, name),unsafe_allow_html=True)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73325543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档