【发布时间】:2022-08-19 01:52:12
【问题描述】:
我试图在Streamlit 应用程序中显示数据帧 df(在下面的代码中)。
在 Jupyter Notebook 中,代码运行成功,没有任何问题。
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
结果在 Jupyter Notebook
但是,当我尝试在 Streamlit 应用程序中实现它时(通过将最后两行替换为下面的行),我得到了一个错误。
st.dataframe(df.style.apply(
lambda x: make_clickable(x[\'url\'], x[\'name\']), axis=1))
Streamlit 的结果/错误
ValueError: 函数 <0x0000028F008DC9D0 处的函数> 导致应用方法崩溃到一个系列。通常,这是 函数返回单个值的结果,而不是 列表状。
你知道如何解决这个问题吗?