如何在streamlit中从用户读取csv文件并转换为pandas数据框

Posted

技术标签:

【中文标题】如何在streamlit中从用户读取csv文件并转换为pandas数据框【英文标题】:How to read csv file from user in streamlit and converting to pandas dataframe 【发布时间】:2021-09-15 18:17:25 【问题描述】:

我想将一些光谱数据读取到我的流光应用程序中。文件中的每一行都是一个光谱(不同的强度值)。所以,我用st.fileuploader

spectra = st.file_uploader("upload file", type="csv", "txt")
spectra = pd.DataFrame(spectra_1_file)
st.write(spectra_1)

现在,我在每一列上只得到一行数据,每个光谱都以逗号分隔。我需要将用户的输入转换为pd.csv_read 的类似方式。因为,当我使用它时,我能够得到一个合适的 pandas 数据框。我尝试了不同的阅读方法。但是,从来没有得到正确的方法。这是我能得到的最接近的。

提前谢谢你。

【问题讨论】:

pandas中有一个方法read_csv可以读取csv数据并转换成dataframe 【参考方案1】:
spectra = st.file_uploader("upload file", type="csv", "txt")
if spectra is not None:
    spectra_df = pd.read_csv(spectra)
st.write(spectra_df)

【讨论】:

【参考方案2】:

通过使用 Pandas 和 Streamlit,您可以读取 CSV 文件并将其上传到本地主机。

data = pd.read_csv("csv_practice.csv") #path folder of the data file
st.write(data) #displays the table of data

【讨论】:

以上是关于如何在streamlit中从用户读取csv文件并转换为pandas数据框的主要内容,如果未能解决你的问题,请参考以下文章

Python按行读取txt文件并转成csv文件

在 java spark 中从 REST API 读取 csv

在C#中从CSV到Datagridview读取不同的值

在 XSLT 代码中从 csv 读取空值而不移动单元格值

如何将本地 csv 文件的内容保存到“硬编码”Pandas DataFrame 中?

如何使用streamlit和python根据数据框中的字段数添加列