본문 바로가기
Project/소경관

[소경관] : Flask를 통한 Pandas 라이브러리 데이터 분석 활용

by 오주현 2021. 12. 28.
반응형
Flask를 통한 Pandas 라이브러리 데이터 분석 활용
from flask import Flask

app = Flask(__name__, static_url_path='/resource')

@app.route("/test")
def spring ():
    return "<h1>Flask Server<h1>"

@app.route("/data")
def data():
    import pandas as pd
    import numpy as np

    m_store = pd.read_csv('C:\git\Parking_management_Project\Flask_data\source\주현아파트.csv')

    m_store.loc[m_store['차량 수'] == "", '설명'] = '차량 수 등록이 안 되어 있습니다.'
    m_store.loc[m_store['차량 수'] == 1, '설명'] = '차량 한 대 중 첫 번째 차량입니다.'
    m_store.loc[m_store['차량 수'] == 2.1, '설명'] = '차량 두 대 중 첫 번째 차량입니다.'
    m_store.loc[m_store['차량 수'] == 2.2, '설명'] = '차량 두 대 중 두 번째 차량입니다.'
    return m_store.to_html()


if __name__ == '__main__':
    app.run(host="127.0.0.1")

아직은 테스트 단계다.

 

프로젝트를 진행하기 전에 우선, 내가 한 번도 사용해 본 적이 없는 기술이기 때문에 간단한 테스트 파일을 만들어서 테스트를 진행하고 있다.

 

어제는 처음으로 플라스크 서버를 열어봤고, 오늘은 처음으로 플라스크 서버에 csv 파일을 띄워 pandas 라이브러리를 활용해 데이터를 가공해 봤다.

 

기본적으로 테스트 파일을 만들어줬고 최대한 프로젝트에 필요한 데이터 베이스를 기반으로 예시 파일을 만들었다.

 

물론, 그렇게 많은 데이터가 필요하진 않아서 6개 정도만 작성했다.

 

이 파일을 불러와 차량 수에 관한 부분을 조금 다듬어 보기 편한 형태로 바꿔줬다.

 

차량 수가 1대일 경우 1대라 뜨고, 2대면 2대 중 몇 대에 속하는지 설정해줬다.

 

그리고 NaN으로 데이터가 들어가는 비어있는 곳은 아직 처리를 시도하고 있다.

 

isnull()로 보통 처리하던데 안 먹히는 것 같다. 나머지는 내일 또 시도해 봐야겠다.

 

대충 프로젝트를 아래처럼 구상하고 있는데 할 수 있는 방법인지는 아직 잘 모르겠다.

 

생각하면서 끄적인 것을 짤로 저장해봤다.

스프링에서 웹을 제공하고 파일을 업로드 받으면 플라스크 서버를 통해 파이썬 프로젝트로 보낸 뒤, 판다스 라이브러리를 통해 데이터를 원하는 형태로 가공하고 다시 스프링으로 넘겨줘서 데이터를 활용하는 구상이다.

 

지금 플라스크에서 판다스 띄우고 데이터 가공하는 것은 했는데 아직 어떻게 가공할지 정한 게 없고 넘겨주는 로직이나 데이터 베이스에 어떤 형태로 저장할지도 못 정했다.

 

일단, 판다스 라이브러리로 원하는 형태로 가공하고 그것을 플라스크 서버에 띄워보는 것 까지를 가까운 목표로 정하고 발전해 나가야겠다.

반응형

댓글