Project

PROJECT 1-(4) ๋ฌธ์ž๋ฅผ ์ž…๋ ฅ ๋ฐ›์•„ ํฌํ•จ๋˜๋Š” ๋ฌธ์ž๊ฐ€ ์žˆ๋Š” ํ–‰ ์ถœ๋ ฅํ•˜๊ธฐ

567Rabbit 2024. 5. 8. 15:19

 

์ž„ํฌํŠธํ•œ๋‹ค.

python
๋‹ซ๊ธฐ
import streamlit as st import pandas as pd from PIL import Image # ํŒŒ์ด์ฌ ์ด๋ฏธ์ง€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ PIL import FinanceDataReader as fdr #์‚ฌ์šฉํ•  ์ฃผ์‹๋ฐ์ดํ„ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋‹ค.

 

 

๊ตญ๋‚ด ์ฃผ์‹๋ฐ์ดํ„ฐ๋ฅผ ๋ถˆ๋Ÿฌ์™€์„œ, df์— ์ €์žฅํ•œ๋‹ค.

python
๋‹ซ๊ธฐ
df = fdr.StockListing("KRX")

 

 

 

 

ํ™”๋ฉด ์ „์ฒด์˜ ๊ฐ€์šด๋ฐ ์ •๋ ฌ์„ ์œ„ํ•ด col2์— ์ฝ”๋“œ๋ฅผ ์งฐ๋‹ค.

 

์ „์ฒด๋ฐ์ดํ„ฐ ๋ณด๊ธฐ๋Š” st.button()์„ ์‚ฌ์šฉํ•˜์˜€๋‹ค.

python
๋‹ซ๊ธฐ
def run_view() : โ€‹โ€‹โ€‹โ€‹ โ€‹โ€‹โ€‹โ€‹col1, col2, col3 = st.columns([1, 2.5, 1]) # ํ™”๋ฉด์˜ ๊ฐ€์šด๋ฐ ์ •๋ ฌ์„ ์œ„ํ•ด ์‚ฌ์šฉํ•จ โ€‹โ€‹โ€‹โ€‹ โ€‹โ€‹โ€‹โ€‹with col2 : โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.title('โ… . ์ฃผ์‹์ •๋ณด ๋ณด๊ธฐ') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.header(' : Viewing stock information') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.subheader('') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.text('์ฃผ์‹์„ ๊ฒ€์ƒ‰ํ•˜์—ฌ ์ •๋ณด๋ฅผ dataset์œผ๋กœ ๋ถˆ๋Ÿฌ์˜ต๋‹ˆ๋‹ค') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.text('๊ธฐ์—…์˜ Code๋Š” ์ฃผ์‹ ์˜ˆ์ธก ๋„๊ตฌ์—์„œ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์ฃผ์‹๊ฐ€์น˜ ์˜ˆ์ธก์„ ์›ํ•˜๋ฉด Code๋ฅผ ๋ณต์‚ฌํ•ด์ฃผ์„ธ์š”') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.header('') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹# ์ „์ฒด ๋ฐ์ดํ„ฐ๋ณด๊ธฐ โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹if st.button(label='์ „์ฒด ๋ฐ์ดํ„ฐ๋ณด๊ธฐ') : โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.dataframe(df, width=2000, height=550) โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹ โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.header('') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.subheader('์ปฌ๋Ÿผ(columns)์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹ โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹# ์ปฌ๋Ÿผ ์„ค๋ช…์— ๋Œ€ํ•œ ์ด๋ฏธ์ง€ โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹img = Image.open('./view_column.png') โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.image(img, width=800) โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹ โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹โ€‹st.header('')

 

 

 

 

 

 

 

 

์ปฌ๋Ÿผ์— ๋Œ€ํ•œ ์„ค๋ช…์€ ์ด๋ฏธ์ง€๋กœ ๋งŒ๋“ค์–ด์„œ ํ™”๋ฉด์— ํ‘œ์‹œํ•˜์˜€๋‹ค.

 

 

 

 

 

 

 

๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ํ•˜๋ฉด ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ ์ถœ๋ ฅํ•˜๊ฒŒํ•˜๊ธฐ

python
๋‹ซ๊ธฐ
โ€‹# ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ํ•˜๋ฉด ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ ์ถœ๋ ฅํ•˜๊ฒŒํ•˜๊ธฐ โ€‹โ€‹โ€‹โ€‹new_data = st.text_input('์ฃผ์‹์˜ Name์„ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š” ex)์‚ผ์„ฑ, ํ˜„๋Œ€') โ€‹โ€‹โ€‹โ€‹st.dataframe(df.loc[df['Name'].str.contains(new_data)], width=2000, height=450)