概要
Streamlitの練習を兼ねて簡単な機械学習アプリを作成しようと
しておりますが、作成したコードをローカルマシン上で実行すると、
ページ途中に設置したselectboxにて項目を選択した際にページがリロードされ、
「ファイル読み込み」のボタンのところからやり直しになります。
もし原因が分かる方がいればご教示願います。
実行環境
Windows10 64bit
Python 3.7.6
Streamlit 0.86.0
ソースコードについて
Python
1import streamlit as st 2import pandas as pd 3 4 5st.title('Test') 6 7uploaded_file = st.file_uploader('1. ファイルをアップロードする。', type='csv') 8 9if uploaded_file is not None: 10 11 button1 = st.button('2. ファイル読み込み') 12 13 if button1: 14 st.markdown('### 読み込みデータ表示') 15 16 df1 = pd.read_csv(uploaded_file) 17 18 st.write(df1) 19 20 target = st.selectbox('3. 目的変数を選択',tuple(df1.columns)) # ここで項目を選択するとページがリロード 21 22 st.write(target)
「目的変数を選択」のselectboxで項目を選択すると
ページがリロードされ、「ファイル読み込み」のボタンの
ところからやり直しになります。
動作テストで読み込ませているデータは、Kaggleのタイタニック号乗客の生存予測コンペの
データです。
どうぞよろしくお願いいたします。
(補足)
「if button1:」の行を無くせばリロードされることはなくなります。ですが、ボタンを
押下してからファイル読み込みが開始される仕様にしたいため、「if button1:」はそのままに
したいと考えています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。