簡體   English   中英

如何在streamlit中將DataFrame保存為csv?

[英]How to save DataFrame as csv in streamlit?

您好,我嘗試在 streamlit 中將我的 DataFrame 保存為 csv 文件。 我的程序返回兩個 Dataframes 以 streamlit 作為data 我想制作允許保存此數據幀的按鈕。 我嘗試這個簡單的代碼:

if st.button("Pobierz plik"):
    data[0].to_csv('file.csv',index=False)

但是當我點擊按鈕時沒有任何反應。 有人知道嗎?

你需要使用st.download_button

對於streamlit > 1.0.0

顯示下載按鈕小部件。

當您希望為用戶提供一種直接從您的應用程序下載文件的方式時,這很有用。

請注意,當用戶連接時,要下載的數據存儲在內存中,因此最好將文件大小保持在幾百兆字節以下以節省 memory。

可以在此處找到一個工作示例

在你的情況下

@st.cache
 def convert_df(df):
     # IMPORTANT: Cache the conversion to prevent computation on every rerun
     return df.to_csv().encode('utf-8')

csv = convert_df(data[0])

st.download_button(
     label="Download data as CSV",
     data=csv,
     file_name='large_df.csv',
     mime='text/csv',
 )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM