学编程的中年大叔 2024-04-02 00:39 采纳率: 50%
浏览 16

用streamlit的write方法输出dataframe数据时无法显示

用streamlit的write方法输出dataframe数据时,提示以下错误:

img

可是用print可以输出这个表格,请教各位这是什么原因?

代码:
import streamlit as st
import pandas as pd

dt = pd.read_excel(r"C:\Users\liangld\Desktop\test.xlsx")
st.write(dt)

  • 写回答

3条回答 默认 最新

  • 关注

    上午好☀️☀️☀️️
    本答案参考ChatGPT-3.5

    问题的主要原因是streamlit对于pandas版本有一定的要求。具体来说,streamlit要求pandas版本高于1.2.0。你的错误表明你的pandas版本太低,因此无法正确显示DataFrame。

    为了解决这个问题,你可以尝试以下步骤:

    1. 检查并更新pandas版本: 运行!pip show pandas来检查你当前安装的pandas版本。如果版本较低,可以运行!pip install pandas --upgrade来升级到1.2.0或更高版本。

    2. 检查streamlit版本: 也请确保你安装的是最新版本的streamlit。可以运行!pip install streamlit --upgrade来升级到最新版本。

    3. 检查依赖关系: 确保使用的其他库和streamlit、pandas是兼容的。有时候,其他库的版本也可能会导致类似的问题。

    4. 重启内核: 在更新了pandas和streamlit后,尝试重新启动你的notebook或代码编辑器。这有助于确保新的库版本已经生效。

    修改后的代码示例:

    import streamlit as st
    import pandas as pd
    
    dt = pd.read_excel(r"C:\Users\liangld\Desktop\test.xlsx")
    st.dataframe(dt)
    

    注意:我将st.write改为了st.dataframe,以便正确显示DataFrame数据。确认所使用的streamlit和pandas版本已经更新,并尝试运行修改后的代码,这应该可以解决问题。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月2日

悬赏问题

  • ¥15 python怎么在已有视频文件后添加新帧
  • ¥20 虚幻UE引擎如何让多个同一个蓝图的NPC执行一样的动画,
  • ¥15 fluent里模拟降膜反应的UDF编写
  • ¥15 MYSQL 多表拼接link
  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵