본문 바로가기

프로그래밍 언어21

[스프링부트] 등장 배경, 주요 특징, 핵심 4가지 목차 LIST 프레임워크란? 소프트웨어 개발을 수월하게 하기 위한 소프트웨어 개발 환경입니다. 프레임워크는 frame(틀)과 work(일하다)의 합성어로 일하기 쉬운 틀을 제공하는 것입니다. 프레임워크는 정해진 틀에서 개발해야 한다는 단점이 있지만 개발 효율은 높다는 장점이 있습니다. 프레임워크는 애플리케이션을 개발할 때 전체적인 구조를 잡기 위해 사용하는 것이고, 라이브러리는 개발을 하는 과정에서 필요한 기능을 구현하기 위해 사용하는 것입니다. 스프링과 스프링 부트? 스프링의 등장 배경 엔터프라이즈 어플리케이션이라는 용어는 대규모의 복잡한 데이터를 관리하는 애플리케이션입니다. 은행 시스템을 생각해보면, 몇 천만명의 사람이 한꺼번에 잔고를 조회하고 입금이나 출금 요청을 하거나 새로운 통장을 개설하기도 합.. 2023. 5. 30.
Python 비동기 Asyncio, coroutine 자세한 내용 비동기 프로그래밍이 필요한 이유 비동기 프로그래밍을 위해 Python 3.4 asyncio 라이브러리가 도입되었고, 3.5에서 async와 await 키워드가 도입되었습니다. 파이썬을 사용하다 보면 블로킹(blocking)을 경험했을 것입니다. 예를 들어 requests 라이브러리를 사용했을 때 requests.get(url)을 호출하면 프로그램이 멈칫하는 현상을 경험할 수 있는데 이는 블로킹으로 인한 결과입니다. 일회성 작업인 경우에는 괜찮을 수 있지만 동시에 10,000개의 URL을 호출한다면 requests를 적절히 호출하기란 쉽지 않습니다. 이는 대규모 병행성(동시성, concurrency)을 배우고 사용해야 하는 이유입니다. Asyncio 소개와 스레딩과의 차이점 Asyncio의 목표는 대기를 .. 2023. 3. 24.
Python Pandas - pivot() 목차 LIST Pivot 테이블이란? 테이블에서 두 개의 column을 각각 row index, column index로 사용하여 데이터를 재정렬 하는 것을 말합니다. 다시 말해, 피벗 테이블은 복잡한 데이터를 요약하고 분석하는데 유용한 테이블입니다. 이것은 마치 데이터를 회전시키거나 "피벗"하듯이 여러 데이터 축을 바탕으로 데이터를 재정렬하는 것을 통해 이해하기 쉬운 형태로 표시합니다. 예를 들어, 온라인 상점의 매출 데이터가 있다고 가정해보겠습니다. 이 데이터에는 "판매일", "상품", "지역", "매출액" 등의 정보가 포함되어 있을 수 있습니다. 이 데이터를 피벗 테이블로 만들면, "지역"을 행으로, "상품"을 열로, "매출액"을 값으로 설정할 수 있습니다. 이렇게 하면 각 지역에서 각 상품의 총 .. 2023. 2. 6.
Python pandas - DataFrame PDS 함수 색인(Indexing) DataFrame pds을 indexing 하기 위한 method로는 loc, iloc, at, iat 네 가지가 있습니다. 아래 예제를 통해 살펴보겠습니다. iloc, iat은 index를 사용해서 값을 가져오며 loc, at은 key, column명으로 값을 가져오는 것을 알 수 있습니다. - 하나씩 가져오기 - 한개의 column 가져오기 >> df.loc[:]['Age'] 11 45 12 36 13 21 Name: Age, dtype: int64 >> df['Age'] 11 45 12 36 13 21 Name: Age, dtype: int64 >> df.Age 11 45 12 36 13 21 Name: Age, dtype: int64 - 두 개 이상의 Column 가져오기 .. 2023. 1. 29.
Python pandas - Series/DataFrame PDS Pandas Data Structure Pandas library는 주로 숫자에 특화된 Numpy에 비해 더 일반적으로 다양한 data type을 다룰 수 있는 tool입니다. Series형 Pandas Data Structure(PDS) pd.Series() class 생성자에 입력 인자로 Python list나 dictionary를 넣어 실행시켜 instance(class)를 만듭니다. >> import pandas as pd; >> ds1 = pd.Series([4, 2, 1]) >> ds1 0 4 1 2 2 1 dtype: int64 >> ds1.values array([4, 2, 1]) >> ds1.index RangeIndex(start=0, stop=3, step=1) indexing 방법은.. 2023. 1. 27.
Python NumPy (2) 특수한 Array, reshape, dimension, copy, nan Python Numpy의 일반적이지 않은 Array, 변경, 차원, 복제, nan과 inf 타입에 대해 알아보겠습니다. 아래는 목차입니다. 특수한 NumPy Array - zeros, eye, arange, linspace, logspace NumPy Array의 변경 - reshape, flatten, swapaxes, insert, delete NumPy Array의 차원(Dimension) 변경 NumPy Array의 복제 NumPy.nan과 NumPy.inf 특수한 NumPy Array - zeros, eye, arange, linspace, logspace 모든 요소들이 모두 다 0 또는 1인 zeros/ones array를 생성하는 방법입니다. dtype을 명시하지 않으면 기본적으로 실수형으로.. 2023. 1. 24.
반응형