파일을 여러개로 만들어서, app8.py 를 실행시키고 각각의 def함수를 이용하는 방식이다.
app8.py의 내용이다
# 파일을 분리해서 개발하는 방법
import streamlit as st
from app8_home import run_home #다른 파일의 def함수를 가져와서 쓰는방법
from app8_eda import run_eda
from app8_ml import run_ml
from app8_about import run_about
def main():
st.title('파일 분리 앱')
menu = ['Home','EDA','ML','About']
choice = st.sidebar.selectbox('메뉴', menu)
if choice == menu[0]:
run_home() #다른 파일의 def함수를 가져와서 쓰는방법
elif choice == menu[1]:
run_eda()
elif choice == menu[2]:
run_ml()
elif choice == menu[3]:
run_about()
if __name__ == '__main__':
main()
app8_home.py
import streamlit as st
def run_home() :
st.subheader('홈 화면')
st.text('파일 분리 앱 실습')
st.image('./data/image_03.jpg')
app8_eda.py
import streamlit as st
import pandas as pd
def run_eda():
st.subheader('EDA 화면')
# iris.csv 파일을 읽어와서 여러 컬럼들 선택 가능토록 하여 선택한 컬럼들만 화면에 보여주고 상관계수도 보여주도록 개발
df = pd.read_csv('./data/iris.csv')
st.dataframe(df)
# 모든 수치형 변수에 대한 상관 계수 계산
numerical_cols = df.select_dtypes(include=['float64', 'int64']).columns
selected_cols = st.multiselect('원하는 컬럼을 선택하세요', numerical_cols)
if selected_cols:
corr_df = df[selected_cols].corr()
st.write("선택한 컬럼들 간의 상관 관계:")
st.write(corr_df)
else:
st.write("컬럼을 선택하세요.")
app8_ml.py
import streamlit as st
def run_ml() :
#예측하는 작업을 수행한다,
st.subheader('이 앱은 ...')
app8_about.py
import streamlit as st
def run_about() :
#예측하는 작업을 수행한다,
st.subheader('about')
'Python > Streamlit' 카테고리의 다른 글
Streamlit) 대시보드의 그래프에 한글 나오게 하는 코드 (0) | 2024.05.03 |
---|---|
Streamlit) 웹페이지에 파일 업로드 장치를 만들고 파일 저장시키기 (0) | 2024.04.26 |
Streamlit) 웹페이지에서 유저에게 숫자, 문자, 시간, 색 입력 받기 (2) | 2024.04.26 |
Streamlit) 이미지/동영상/음악파일을 웹 페이지 화면에 띄우는 방법 (0) | 2024.04.26 |
Streamlit) UI함수를 사용하여 버튼 만들기 (0) | 2024.04.26 |