Skip to content
@FISA-Mini-RealEstate

FISA-Mini-RealEstate

๐Ÿ  ์ฒญ๋…„ ๋ฒ„ํŒ€๋ชฉ ์ „์„ธ์ž๊ธˆ ๋Œ€์ถœ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ & AI ๋ถ€๋™์‚ฐ ์ปจ์„คํ„ดํŠธ

"์‚ฌํšŒ์ดˆ๋…„์ƒ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ์ „์„ธ ์‚ฌ๊ธฐ ์˜ˆ๋ฐฉ ๋ฐ ๋งž์ถคํ˜• ๋งค๋ฌผ ์ถ”์ฒœ ์„œ๋น„์Šค"

Python Streamlit MySQL OpenAI


๐Ÿ”— ์„œ๋น„์Šค ๋ฐฐํฌ (Deployment)



๐Ÿ“… ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

  • ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„: 2026.01.22 ~ 2026.01.23
  • ํŒ€๋ช…: ์•Œ๊ณ (Algo)๋ฆฌ์ง‘
  • ํ•œ ์ค„ ์†Œ๊ฐœ: ๊ธˆ์œต์ด ๋‚ฏ์„  ์‚ฌํšŒ์ดˆ๋…„์ƒ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ์ „์„ธ ๋Œ€์ถœ ๊ฐ€์ด๋“œ

๐Ÿ’ก ํŒ€์› ์†Œ๊ฐœ

์„œ์ง€ํ˜œ ์‹ฌํšจ์ง„ ์ด๋‚จ๊ธธ ์šฐ๋ฏผํ•˜
์„œ์ง€ํ˜œ ์‹ฌํšจ์ง„ ์ด๋‚จ๊ธธ ์šฐ๋ฏผํ•˜
@Jihye0623 @hyojin-shj @SouthGiri @minha222
โ€ข AI: OpenAI API
โ€ข Analysis: Plotly
โ€ข DB & Database: MySQL & Pandas
โ€ข DB: MySQL
โ€ข Logic: Filtering & Mapping
โ€ข Chart: Folium
โ€ข DB: MySQL
โ€ข Logic: Loan Condition,
Monthly Payment
โ€ข Chart: Plotly Strip
โ€ข UI/UX: Main Page Layout
โ€ข Form: User Input

๐Ÿ“Š ๋ฐ์ดํ„ฐ ์„ ์ • ๋ฐ ๋ถ„์„ (Data & Insights)

1. ๋ฐ์ดํ„ฐ ์„ ์ • ๋ฐฐ๊ฒฝ

์ „์„ธ ๋Œ€์ถœ ์ƒํ’ˆ๊ณผ ๊ธˆ๋ฆฌ์— ์ต์ˆ™ํ•˜์ง€ ์•Š์€ ์‚ฌํšŒ์ดˆ๋…„์ƒ์ด ๋ณธ์ธ์˜ ๊ฒฝ์ œ ์ƒํ™ฉ์— ๋งž๊ฒŒ ์ „์„ธ ๋Œ€์ถœ ์ƒํ’ˆ์„ ํ•œ๋ˆˆ์— ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋„๋กํ•˜์—ฌ ์˜์‚ฌ๊ฒฐ์ •์„ ์ง€์›ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

  • ์„œ์šธ์‹œ ๋ถ€๋™์‚ฐ ์ „์›”์„ธ๊ฐ€ ์ •๋ณด: ์‹ค์ œ ์ „์›”์„ธ ๊ฑฐ๋ž˜ ๊ฐ€๊ฒฉ๊ณผ ์œ„์น˜ ์ •๋ณด๋ฅผ ๋‹ด์•„, ์‹œ์„ธ ๋ถ„์„์˜ ๊ธฐ์ค€์ด ๋จ.
  • ์ฃผํƒ๋„์‹œ๊ธฐ๊ธˆ(HUG) ๋Œ€์ถœ ์ƒํ’ˆ ๋ฐ์ดํ„ฐ: '์ฒญ๋…„ ๋ฒ„ํŒ€๋ชฉ ์ „์„ธ์ž๊ธˆ๋Œ€์ถœ'์˜ ์ •ํ™•ํ•œ ๊ธˆ๋ฆฌ์™€ ํ•œ๋„ ์‚ฐ์ถœ์„ ์œ„ํ•ด ์„ ์ •.
  • ์€ํ–‰์—ฐํ•ฉํšŒ ์ „์„ธ์ž๊ธˆ๋Œ€์ถœ ์ƒํ’ˆ ๋ฐ์ดํ„ฐ: ์‹œ์ค‘ ์€ํ–‰์˜ ์ „์„ธ ์ž๊ธˆ ๋Œ€์ถœ ์ƒํ’ˆ์˜ ๊ธˆ๋ฆฌ์™€ ์›” ๋ถ€๋‹ด๊ธˆ ์ •๋ณด ์ œ๊ณต.

2. ๋ถ„์„ ๊ธฐ์ค€ ๋ฐ ๋„์ถœ ์ธ์‚ฌ์ดํŠธ

  • ๋ถ„์„ ๊ธฐ์ค€:
    • ํ‘œ์ค€ํ™” ์ง€ํ‘œ ๋„์ž…: ์‹ค์ œ ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ€์žฅ ๋ฏผ๊ฐํ•˜๊ฒŒ ์ธ์ง€ํ•˜๋Š” ์ „์„ธ ๋ณด์ฆ๊ธˆ(deposit) ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ์ˆ˜ํ–‰ํ•จ.
    • ๋ฐ์ดํ„ฐ ์ •์ œ: ์ฃผ์†Œ ๊ธฐ๋ฐ˜ ์ง€์˜ค์ฝ”๋”ฉ ์ •ํ™•๋„๋ฅผ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•ด ๋ณธ๋ฒˆยท๋ถ€๋ฒˆ ์ •๋ณด๊ฐ€ ๋ˆ„๋ฝ๋œ ์ฃผ์†Œ ๋ฐ์ดํ„ฐ๋Š” ๋ถ„์„ ๋Œ€์ƒ์—์„œ ์ œ์™ธํ•˜๊ณ ,์‹ค์ œ ์œ„์น˜ ๋งคํ•‘์ด ๊ฐ€๋Šฅํ•œ ๋งค๋ฌผ๋งŒ ํ™œ์šฉํ•จ.
  • ์ธ์‚ฌ์ดํŠธ (Insights):
    • ๐Ÿ“ˆ ๋ถ„์„ ๊ฒฐ๊ณผ:
      • ์ง€์—ญ๋ณ„ ๊ฐ€๊ฒฉ ํŽธ์ฐจ: ๋ณด์ฆ๊ธˆ ๊ธฐ์ค€์œผ๋กœ ๋งค๋ฌผ์„ ์‹œ๊ฐํ™”ํ•œ ๊ฒฐ๊ณผ, ๊ณ ๊ฐ€ ๋งค๋ฌผ์ด ๋ฐ€์ง‘๋œ ์ง€์—ญ๊ณผ ์ƒ๋Œ€์ ์œผ๋กœ ์ €๋ ดํ•œ ๋งค๋ฌผ์ด ๋ถ„ํฌํ•œ ์ง€์—ญ์ด ์ง€๋„ ์ƒ์—์„œ ํ™•์ธ ๊ฐ€๋Šฅ.
      • ํ›„๋ณด ๋งค๋ฌผ์˜ ๋น„๊ต: ํ•„ํ„ฐ๋ง์„ ํ†ตํ•ด ์„ ํƒ๋œ ๋งค๋ฌผ๋“ค์— ๋Œ€ํ•ด ๋ณด์ฆ๊ธˆ ๋ถ„ํฌ, ์š”์•ฝ ํ†ต๊ณ„๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๊ฐœ๋ณ„ ๋งค๋ฌผ์˜ ์ˆ˜์ค€ ํŒ๋‹จ ๊ฐ€๋Šฅ.
    • ๐Ÿ’ก ์†”๋ฃจ์…˜:
      • AI ๊ธฐ๋ฐ˜ ๋งž์ถค ๋งค๋ฌผ ์ถ”์ฒœ: ์ง€๋„ ๋ฐ ๋งคํŠธ๋ฆญ์Šค ๋ถ„์„์„ ํ†ตํ•ด ์••์ถ•๋œ ํ›„๋ณด ๋งค๋ฌผ ์ค‘์—์„œ ์‚ฌ์šฉ์ž์˜ ์„ ํ˜ธ ์กฐ๊ฑด์„ ์ž…๋ ฅ๋ฐ›์•„ OpenAI API ๊ธฐ๋ฐ˜ ๋ถ„์„์œผ๋กœ ์ ํ•ฉํ•œ ๋งค๋ฌผ ์ถ”์ฒœ.
      • ์ง€์—ญ๋ณ„ ์‹œ์„ธ ํƒ์ƒ‰: ํ‰์ˆ˜ ๋Œ€๋น„ ๋ณด์ฆ๊ธˆ์˜ ์ƒ๊ด€๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ถ”์„ธ์„ ์„ ์ œ๊ณตํ•˜์—ฌ, ํ‰๊ท  ์‹œ์„ธ๋ณด๋‹ค ๋‚ฎ์€ ๊ฐ€๊ฒฉ๋Œ€๊ฐ€ ํ˜•์„ฑ๋œ ์ง€์—ญ์„ ์‹œ๊ฐ์ ์œผ๋กœ ํŒŒ์•…ํ•˜๊ณ  ์šฐ์„  ์ˆœ์œ„ ๋ฐœํ’ˆ ํ›„๋ณด์ง€ ์„ ์ •์„ ์œ„ํ•œ ์˜์‚ฌ๊ฒฐ์ • ์ง€์›.
      • ์˜์‚ฌ๊ฒฐ์ • ์ง€์›: ์›”๋ณ„ ํ‰๋‹จ๊ฐ€ ๊ทธ๋ž˜ํ”„๊ฐ€ ์šฐ์ƒํ–ฅ์ผ ๊ฒฝ์šฐ '๋น ๋ฅธ ๊ณ„์•ฝ'์„, ์šฐํ•˜ํ–ฅ์ผ ๊ฒฝ์šฐ '๊ด€๋ง'์„ ์ œ์•ˆํ•˜๋Š” ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ํƒ€์ด๋ฐ ๊ฐ€์ด๋“œ ์ œ๊ณต.


๐Ÿ› ๏ธ ๊ธฐ์ˆ  ์Šคํƒ (Tech Stack)

๊ตฌ๋ถ„ ๊ธฐ์ˆ  ํ™œ์šฉ ๋‚ด์šฉ
Frontend Streamlit Python ๊ธฐ๋ฐ˜์˜ ๋น ๋ฅธ ์›น ๋Œ€์‹œ๋ณด๋“œ ๊ตฌํ˜„ ๋ฐ ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ UI ๊ตฌ์„ฑ
Backend Python ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ(Pandas), ๋Œ€์ถœ ํ•œ๋„ ๊ณ„์‚ฐ ๋กœ์ง ๊ตฌํ˜„
Database MySQL ๋งˆํฌ๊ตฌ ๋ถ€๋™์‚ฐ ์‹ค๊ฑฐ๋ž˜๊ฐ€ ๋ฐ์ดํ„ฐ ์ ์žฌ ๋ฐ ์ฟผ๋ฆฌ
AI / ML OpenAI ์‚ฌ์šฉ์ž ์ทจํ–ฅ ๋ถ„์„ ๋ฐ ๋งค๋ฌผ ๋น„๊ต ๋ฆฌํฌํŠธ ์ƒ์„ฑ (Prompt Engineering)
Visualization Plotly Folium ๋™์  ์ง€๋„ ์‹œ๊ฐํ™”, ์ „์„ธ๊ฐ€์œจ ์œ„ํ—˜๋„ ๊ทธ๋ž˜ํ”„, ๋งค๋ฌผ ๊ฐ€๊ฒฉ ๋น„๊ต ์ฐจํŠธ
Collaboration Git Notion ํ˜•์ƒ ๊ด€๋ฆฌ ๋ฐ ๋ชจ๋“ˆํ™” ํ˜‘์—… (Page ๋‹จ์œ„ ๋ถ„๋ฆฌ ๊ฐœ๋ฐœ)


๐Ÿ’ก ์ฃผ์š” ๊ธฐ๋Šฅ (Key Features)

1๏ธโƒฃ ์ขŒํ‘œ ๊ธฐ๋ฐ˜ ์ง๊ด€์  ์‹ค๊ฑฐ๋ž˜๊ฐ€ ์‹œ๊ฐํ™” (Page 1)

  • ์ขŒํ‘œ ๊ธฐ๋ฐ˜ ์‹ค๊ฑฐ๋ž˜๊ฐ€ ์ง€๋„:
    ์ฃผ์†Œ ๋ฐ์ดํ„ฐ๋ฅผ ์œ„๊ฒฝ๋„(lat, lon)๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ DB์— ์ €์žฅํ•˜๊ณ ,
    Folium ์ง€๋„ ์œ„์— ์‹ค์ œ ์œ„์น˜ ๊ธฐ์ค€ ๋ฒ„๋ธ” ๋งค๋ฌผ๋กœ ์‹œ๊ฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • ์กฐ๊ฑด ๊ธฐ๋ฐ˜ ๋งค๋ฌผ ํ•„ํ„ฐ๋ง:
    ์‚ฌ์šฉ์ž๊ฐ€ ์„ค์ •ํ•œ ๋ณด์ฆ๊ธˆ ํ•œ๋„, ๋ฉด์ , ๊ฑฐ๋ž˜ ์œ ํ˜•(์ „์„ธ) ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋งค๋ฌผ๋งŒ ์„ ๋ณ„ํ•˜๋Š”
    ํ•„ํ„ฐ๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌํ˜„ํ•˜์—ฌ ๋ถˆํ•„์š”ํ•œ ๋งค๋ฌผ ๋…ธ์ถœ์„ ์ฐจ๋‹จํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฒ„๋ธ” ์ง€๋„ ์‹œ๊ฐํ™”:
    ํ•„ํ„ฐ๋ง์„ ํ†ต๊ณผํ•œ ๋งค๋ฌผ๋งŒ ์ง€๋„์— ๋ฒ„๋ธ” ํ˜•ํƒœ๋กœ ํ‘œ์‹œํ•˜์—ฌ
    ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ€๊ฒฉยท์ž…์ง€ ๋ถ„ํฌ๋ฅผ ์ง๊ด€์ ์œผ๋กœ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.

2๏ธโƒฃ AI ๋ถ€๋™์‚ฐ ์ปจ์„คํ„ดํŠธ (Page 1)

  • ๋งž์ถคํ˜• ๋งค๋ฌผ ์ถ”์ฒœ: ์‚ฌ์šฉ์ž๊ฐ€ ์„ ํ˜ธํ•˜๋Š” ๋ถ„์œ„๊ธฐ(์˜ˆ: "์กฐ์šฉํ•œ ์ˆฒ์„ธ๊ถŒ")๋ฅผ ์ž…๋ ฅํ•˜๋ฉด OpenAI API๊ฐ€ ๋งค๋ฌผ์˜ ํŠน์ง•์„ ๋ถ„์„ํ•ด ์ ํ•ฉ๋„๋ฅผ ํŒ๋‹จํ•ฉ๋‹ˆ๋‹ค.
  • ์Šค๋งˆํŠธ ๋น„๊ต ๋ฆฌํฌํŠธ: ์„ ํƒํ•œ ๋‘ ๋งค๋ฌผ์˜ ๊ฐ€๊ฒฉ, ์œ„์น˜, ์žฅ๋‹จ์ ์„ 1:1๋กœ ๋น„๊ตํ•˜์—ฌ Markdown ํ˜•์‹์˜ ๊น”๋”ํ•œ ๋ฆฌํฌํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

3๏ธโƒฃ ์ „์„ธ ๋Œ€์ถœ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ (Page 2)

  • ์€ํ–‰๋ณ„ ๋Œ€์ถœ ํ•œ๋„ ๋ถ„์„: ์‚ฌ์šฉ์ž์˜ ๋ณด์œ  ์˜ˆ์‚ฐ๊ณผ ํฌ๋งํ•˜๋Š” ์ „์„ธ ๋ณด์ฆ๊ธˆ์„ ์ž…๋ ฅํ•˜๋ฉด, ์ฃผ์š” ์‹œ์ค‘ ์€ํ–‰๋ณ„๋กœ ์ œ๊ณต ๊ฐ€๋Šฅํ•œ ๋Œ€์ถœ ํ•œ๋„์™€ ๊ธˆ๋ฆฌ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • Strip plot ์‹œ๊ฐํ™”: ์€ํ–‰๋ณ„ ๋Œ€์ถœ ์ƒํ’ˆ์˜ ์›” ๋ถ€๋‹ด๊ธˆ ๋ถ„ํฌ๋ฅผ Strip plot์œผ๋กœ ์‹œ๊ฐํ™”ํ•˜์—ฌ, ์€ํ–‰์˜ ์›” ๋ถ€๋‹ด๊ธˆ์„ ํ•œ๋ˆˆ์— ๋น„๊ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

4๏ธโƒฃ ์ „์„ธ ์‹œ์žฅ ์‹ฌ์ธต ๋ถ„์„ (Page 3)

  • ์‹œ์„ธ ํŠธ๋ Œ๋“œ: ์›”๋ณ„ ํ‰๊ท  ํ‰๋‹จ๊ฐ€ ์ถ”์ด๋ฅผ Line Chart๋กœ ์‹œ๊ฐํ™”ํ•˜๊ณ , ์ƒ์Šน/ํ•˜๋ฝ ํ๋ฆ„์— ๋Œ€ํ•œ ํ•ด์„ ๊ฐ€์ด๋“œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ๋™๋„ค๋ณ„ ๊ฐ€์„ฑ๋น„ ๋น„๊ต: ์„ ํƒํ•œ ๋™๋„ค๋“ค์˜ ํ‰๋‹จ๊ฐ€ ๋ถ„ํฌ๋ฅผ Box Plot์œผ๋กœ ๋น„๊ตํ•ด ๊ฐ€๊ฒฉ ๋ถ„์‚ฐ(๋ฐ”๊ฐ€์ง€ ์œ„ํ—˜)๊ณผ ๊ฐ€์„ฑ๋น„๋ฅผ ํŒ๋‹จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ˆจ์€ ๊ฟ€๋งค๋ฌผ ํƒ์ƒ‰: ํ‰์ˆ˜-๋ณด์ฆ๊ธˆ Scatter Plot์— ํ‰๊ท  ์‹œ์„ธ์„ ์„ ์ถ”๊ฐ€ํ•˜์—ฌ, ์‹œ์„ธ์„  ํ•˜๋‹จ์˜ ์ƒ๋Œ€์ ์œผ๋กœ ์ €๋ ดํ•œ ๋งค๋ฌผ์„ ์ง๊ด€์ ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๐Ÿ“‚ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ (Directory Structure)

๐Ÿ“‚ FISA-realEstate 
 โ”ฃ ๐Ÿ“‚ figure/              
 โ”ƒ โ”ฃ ๐Ÿ–ผ๏ธ mapo.png
 โ”ƒ โ”— ๐Ÿ–ผ๏ธ woorifisa.png
 โ”ฃ ๐Ÿ“‚ pages/              
 โ”ƒ โ”ฃ ๐Ÿ“œ 1_์ „์„ธ_์ง€๋„_&_AI_์ปจ์„คํ„ดํŠธ.py
 โ”ƒ โ”— ๐Ÿ“œ 2_๋Œ€์ถœ_ํ•œ๋„_๊ณ„์‚ฐํ•˜๊ธฐ.py
 โ”ƒ โ”— ๐Ÿ“œ 3-์ „์„ธ_์‹œ์žฅ_์‹ฌ์ธต_๋ถ„์„.py
 โ”ฃ ๐Ÿ“œ Home.py               
 โ”ฃ ๐Ÿ“œ sidebar.py           
 โ”— ๐Ÿ“œ requirements.txt     

๐Ÿš€ ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ… (Troubleshooting)

์„œ๋น„์Šค๋ฅผ ๊ฐœ๋ฐœํ•˜๋ฉฐ ๊ฒช์€ ์ฃผ์š” ๊ธฐ์ˆ ์  ๋ฌธ์ œ์™€ ํ•ด๊ฒฐ ๊ณผ์ •์ž…๋‹ˆ๋‹ค.

๐Ÿ”ง ์ด์Šˆ 1: ๋Œ€์šฉ๋Ÿ‰ ๊ณต๊ณต๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ DB ์ ์žฌ ์ง€์—ฐ

  • ๋ฌธ์ œ ์ƒํ™ฉ: 50๋งŒ ๊ฑด ์ด์ƒ์˜ ์„œ์šธ์‹œ ์‹ค๊ฑฐ๋ž˜๊ฐ€ CSV ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ๋“œํ•˜๊ณ  MySQL์— ์ ์žฌํ•˜๋Š” ๊ณผ์ •์—์„œ ๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ ๋ฐ ํƒ€์ž„์•„์›ƒ ๋ฐœ์ƒ.
  • ์›์ธ ๋ถ„์„: ๋ถˆํ•„์š”ํ•œ ํ–‰์ • ์ฝ”๋“œ ์ปฌ๋Ÿผ๊นŒ์ง€ ๋ชจ๋‘ ๋กœ๋“œ๋˜์—ˆ์œผ๋ฉฐ, ํ•œ ๋ฒˆ์— Insert๋ฅผ ์‹œ๋„ํ•˜์—ฌ ๋ถ€ํ•˜ ๋ฐœ์ƒ.
  • ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•:
    • ๋ฐ์ดํ„ฐ ๊ฒฝ๋Ÿ‰ํ™”: ํ”„๋กœ์ ํŠธ ํƒ€๊ฒŸ์ธ '๋งˆํฌ๊ตฌ' ๋ฐ์ดํ„ฐ๋งŒ ํ•„ํ„ฐ๋งํ•˜๊ณ  ๋ถ„์„์— ๋ถˆํ•„์š”ํ•œ '์ง€๋ฒˆ์ฝ”๋“œ', '์ ‘์ˆ˜๋…„๋„' ๋“ฑ 21๊ฐœ ์ปฌ๋Ÿผ ์ค‘ 13๊ฐœ๋ฅผ ์ œ๊ฑฐํ•˜์—ฌ, ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ 343.66MB์—์„œ 4.52MB๋กœ ์•ฝ 98.7% ๊ฐ์†Œ์‹œ์ผœ ๋ฆฌ์†Œ์Šค ํšจ์œจ์„ฑ ๊ทน๋Œ€ํ™”.
    • ์ ์žฌ ํšจ์œจํ™”: ๊ธฐ์กด์— ์‹คํŒจํ•˜๋˜ DB ์ ์žฌ ์ž‘์—…์„ 15.94์ดˆ ๋งŒ์— ์™„๋ฃŒํ•˜๋ฉฐ ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ์•ˆ์ •์„ฑ ํ™•๋ณด.
๊ตฌ๋ถ„ ์›๋ณธ ๋ฐ์ดํ„ฐ (Raw) ๋ณ€๊ฒฝ ํ›„ ๋ฐ์ดํ„ฐ (Optimized) ๊ฐœ์„  ํšจ๊ณผ
์ปฌ๋Ÿผ ์ˆ˜ 23๊ฐœ 13๊ฐœ 10๊ฐœ ์ปฌ๋Ÿผ ์ œ๊ฑฐ / ํ†ตํ•ฉ (์•ฝ 43% ๊ฐ์†Œ)
๋ฐ์ดํ„ฐ ํ–‰ ์ˆ˜ 500,000+๊ฑด 600๊ฑด 99.8% ์ด์ƒ ์ถ•์†Œ
๋ฐ์ดํ„ฐ ์ ์žฌ ์‹œ๊ฐ„ ์žฆ์€ ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ… ๋ฐœ์ƒ (ํƒ€์ž… ๋ถˆ์ผ์น˜, Null ์ด์Šˆ ๋“ฑ) ์ฆ‰์‹œ ์ ์žฌ ๊ฐ€๋Šฅ ์ ์žฌ ์•ˆ์ •์„ฑ ํ™•๋ณด ๋ฐ ๋ฐ˜๋ณต ํŠธ๋Ÿฌ๋ธ” ์ œ๊ฑฐ
ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ… ์†Œ์š” ์‹œ๊ฐ„ ํ‰๊ท  10๋ถ„ ์ด์ƒ ๊ฑฐ์˜ 0 ๋ฐ์ดํ„ฐ ์ ์žฌยท์ •์ œ ์‹œ๊ฐ„ ๋Œ€ํญ ๋‹จ์ถ•
์ฃผ์š” ์ปฌ๋Ÿผ ๊ตฌ์กฐ ์ ‘์ˆ˜์—ฐ๋„, ์ž์น˜๊ตฌ๋ช…, ๊ฑด๋ฌผ๋ช… ๋“ฑ ์ค‘๋ณต ๋“ฑ district, dong, bldg_name, area, deposit, contract_date ๋“ฑ ์ง๊ด€์ ยท๋ถ„์„ ์นœํ™”์  ๊ตฌ์กฐ

๐Ÿ”ง ์ด์Šˆ 2: ์ง€์˜ค์ฝ”๋”ฉ ํˆด ํ•œ๊ณ„ ๊ทน๋ณต ๋ฐ ๊ฒฐ์ธก์น˜ ์ฒ˜๋ฆฌ

  • ๋ฌธ์ œ ์ƒํ™ฉ:
    • ํŒ๋‹ค์Šค๋กœ ์นด์นด์˜ค API๋ฅผ ์—ฐ๋™ํ•ด ์ฃผ์†Œ๋ฅผ ์œ„๊ฒฝ๋„๋กœ ๋ณ€ํ˜•ํ•˜์—ฌ DB์— ์ ์žฌํ•˜๋ ค ํ•˜์˜€์œผ๋‚˜ ๊ณ„์†๋˜๋Š” ํ†ต์‹  ์—๋Ÿฌ๋กœ ์‹คํŒจ.
    • ์ฐจ์„ ์ฑ…์œผ๋กœ ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ Geocoder ํˆด์„(์œ„๊ฒฝ๋„๋ณ€ํ™˜ ์ง€์›) ์‚ฌ์šฉํ•˜๋ ค ํ–ˆ์œผ๋‚˜ ๋ฌด๋ฃŒ ๋ณ€ํ™˜ ํ•œ๋„ ์ดˆ๊ณผ๋กœ ์ž‘์—… ์‹คํŒจ.
    • ๋ฐ์ดํ„ฐ์…‹ ์ค‘ ์ฃผ์†Œ์ง€ ๋ณธ๋ฒˆ/๋ถ€๋ฒˆ ๋ฐ์ดํ„ฐ ๊ฒฐ์ธก์น˜๋กœ ์—๋Ÿฌ ๋ฐœ์ƒ
  • ์›์ธ ๋ถ„์„
    • ๋ฌด๋ฃŒ ํˆด์˜ ์ผ์ผ ์ฟผ๋ฆฌ ์ œํ•œ ๋ฐ ์œ ๋ฃŒ API์˜ ์ธ์ฆ ๋ณต์žก์„ฑ์œผ๋กœ ์ธํ•ด ์‹œ๊ฐ„๋‚ด ํ•ด๊ฒฐ ๋ถˆ๊ฐ€๋Šฅ.
    • ๋ฐ์ดํ„ฐ์…‹์— bonbun(๋ณธ๋ฒˆ)์ด๋‚˜ bubun(๋ถ€๋ฒˆ)์ด NaN์ธ ํ–‰์ด ์žˆ์–ด ์ •์ˆ˜ ๋ณ€ํ™˜ ์‹œ ์—๋Ÿฌ ๋ฐœ์ƒ.
  • ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•:
    • ๊ธฐ์ˆ  ์Šคํƒ ๋ณ€๊ฒฝ: ์˜คํ”ˆ์†Œ์Šค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ Geopy (Nominatim) ์ฑ„ํƒ.
    • pd.isna()๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒฐ์ธก์น˜๊ฐ€ ์žˆ๋Š” ์ฃผ์†Œ๋Š” 0์œผ๋กœ ๊ฑด๋„ˆ๋›ฐ๋„๋ก ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ๊ตฌํ˜„.
๊ตฌ๋ถ„ ๊ธฐ์กด ๋ฐ์ดํ„ฐ ์ƒํƒœ ๊ฐœ์„  ํ›„ ๋ฐ์ดํ„ฐ ์ƒํƒœ ๊ฐœ์„  ํšจ๊ณผ
์ฃผ์†Œ ์ปฌ๋Ÿผ ๊ตฌ์กฐ ๋ฒ•์ •๋™, ์ง€๋ฒˆ, ๋ณธ๋ฒˆ, ๋ถ€๋ฒˆ ์ปฌ๋Ÿผ ๋ถ„๋ฆฌ ๋ฐ ์ผ๋ถ€ ๊ฒฐ์ธก ๋ฒ•์ •๋™ + ์ง€๋ฒˆ + ๋ณธ๋ฒˆ + ๋ถ€๋ฒˆ์„ ๊ฒฐํ•ฉํ•œ ๋‹จ์ผ ์ฃผ์†Œ ์ปฌ๋Ÿผ ์ƒ์„ฑ ์ง€์˜ค์ฝ”๋”ฉ ์ž…๋ ฅ ํฌ๋งท ํ‘œ์ค€ํ™”
๊ฒฐ์ธก์น˜ ์ฒ˜๋ฆฌ ๋ณธ๋ฒˆ/๋ถ€๋ฒˆ NaN ์กด์žฌ โ†’ ์ •์ˆ˜ ๋ณ€ํ™˜ ์‹œ ์—๋Ÿฌ ๋ฐœ์ƒ pd.isna() ๊ธฐ๋ฐ˜ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ, ๊ฒฐ์ธก์น˜๋Š” 0์œผ๋กœ ์น˜ํ™˜ ์ฃผ์†Œ ํŒŒ์‹ฑ ์—๋Ÿฌ ์ œ๊ฑฐ
์œ„๊ฒฝ๋„ ์ปฌ๋Ÿผ lat, lon ๋‹ค์ˆ˜ NULL ์œ„ยท๊ฒฝ๋„ ์ •์ƒ ๋งคํ•‘๋œ ์‹ ๊ทœ ์ปฌ๋Ÿผ ์ƒ์„ฑ ์ง€๋„ ์‹œ๊ฐํ™” ๊ฐ€๋Šฅ
์ง€์˜ค์ฝ”๋”ฉ ๋ฐฉ์‹ ์นด์นด์˜ค API / ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ Geocoder (์ œํ•œ ์ดˆ๊ณผ) Geopy(Nominatim) ๊ธฐ๋ฐ˜ ์˜คํ”ˆ์†Œ์Šค ์ง€์˜ค์ฝ”๋”ฉ ์ฟผ๋ฆฌ ์ œํ•œ ๋ฌธ์ œ ํ•ด๊ฒฐ
์ตœ์ข… ๋ฐ์ดํ„ฐ์…‹ ์ฃผ์†Œ ๋ฌธ์ž์—ด ์ค‘์‹ฌ ์ฃผ์†Œ + ์œ„๋„(lat) + ๊ฒฝ๋„(lon) ํฌํ•จ ๊ณต๊ฐ„ ๋ถ„์„ ๊ฐ€๋Šฅ ๋ฐ์ดํ„ฐ ํ™•๋ณด

๐ŸŽฌ ์‹œํ˜„์˜์ƒ

Video Label

Popular repositories Loading

  1. .github .github Public

  2. fisa06-realEstate fisa06-realEstate Public

    ์šฐ๋ฆฌFISA 6๊ธฐ streamlit '์‚ฌํšŒ์ดˆ๋…„์ƒ์„ ์œ„ํ•œ ๋งˆํฌ๊ตฌ ์ „์„ธ์ž๊ธˆ๋Œ€์ถœ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ' ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

    Python 1

Repositories

Showing 2 of 2 repositories

Top languages

Loadingโ€ฆ

Most used topics

Loadingโ€ฆ