![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJDhnR%2FbtrVZXmBR9z%2FML9sAfZkXjDjx6syyHYPp0%2Fimg.png)
Basic Data Types - Nested Lists (Python)
2023. 1. 11. 18:09
알고리즘/HackerRank
Summary 이 문제는 리스트를 응용해서 풀 수 있게 만들어진 문제로 보인다. N 명의 학생의 이름과 점수를 순서대로 입력받아 처리해주어야 한다. 예제를 보면 알 수 있듯이 이름 - 점수 - 이름 - 점수 순으로 입력된다. 문제에서 원하는 결과는 두 번째로 낮은 점수를 가진 학생을 이름순으로 정렬해서 출력하는 것이다. 그래서 단순하게 이름과 점수를 하나의 리스트 [이름, 점수] 로 저장했고 등급을 하나 더 저장했다. 이렇게 한 이유는 일단 점수를 저장해서 두 번째로 낮은 점수를 가져오고 가져온 점수로 검색해서 이름을 출력해야겠다고 생각했다. stds = [] scores = [] for _ in range(int(input())): name = input() score = float(input()) s..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKljgC%2FbtrVO2bKQZi%2FZwPKtpRhHa9GAG6CQZowhk%2Fimg.png)
[Python] Basic Data Types - Lists
2023. 1. 10. 18:31
알고리즘/HackerRank
Summary 파이썬의 리스트에 대해서 얼마나 이해하고 있는지 확인할 수 있고 리스트에서 사용할 수 있는 기본적인 함수들을 사용해서 풀 수 있는 문제였다. 문제에서 필요로 하는 옵션은 다음과 같았다. insert append remove pop sort reverse 이런 옵션을 사용해서 리스트에 추가, 삭제, 정렬 등의 기능을 수행하는 문제였다. 그리고 문자를 입력해 문자열을 나누어 명령어와 값 그리고 인덱스를 구분해서 사용해주어야 했다. 이 부분은 다음과 같이 split() 을 사용해서 문자열을 나누어 구분해줄 수 있었다. cmd = input_str.split() split 함수는 기본적으로 공백을 기준으로 문자열을 나누어준다. 원하는 문자로 나누고 싶으면 다음과 같이 괄호 () 안에 문자열을 나누..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvXwIb%2FbtrVBcSkf5X%2F9IBpVTO03kKrcKm0VLuCH0%2Fimg.png)
Python List Comprehension
2023. 1. 8. 20:47
프로그래밍 언어/Python
List Comprehension List Comprehensino (이하, 리스트 컴프리헨션) List 는 파이썬의 리스트를 Comprehensions 의 사전적 의미는 이해 또는 이해력 이라고 해석해볼 수 있다. 즉, 리스트 이해, 리스트 축약, 리스트 해석, 리스트 표현식 등의 표현으로 주로 사용된다고 한다. 리스트 컴프리헨션)에 대해서 이해하기 전에 파이썬의 리스트에 대해서 이해할 필요가 있다. 파이썬의 리스트가 특이한 점은 리스트 안에 반복문과 조건문을 사용할 수 있다는 점이다. 리스트 컴프리헨션은 파이썬의 반복문과 조건문을 보다 쉽게 사용해서 리스트를 만드는 방법을 말한다. 이렇게 이해한 내용을 토대로 예시를 들어가면서 정리해봤다. 1) 반복문을 통해 리스트 생성 반복문을 통해 리스트 컴프리헨..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEGmc7%2FbtrVAMfepyL%2FX2t6EdEiEVBaj2aKygZkY0%2Fimg.png)
Basic Data Types - List Comprehensions (Python)
2023. 1. 8. 19:54
알고리즘/HackerRank
Summary 이 문제는 List Comprehensions 를 통해 풀어보라고 내준 문제인 것으로 보였다. 그래서 List Comprehensions 에 대해서 먼저 알아야할 필요가 있었다. List Comprehensions 에 대해서 간단하게 정리하고 넘어가자면 리스트를 보다 쉽게 만들기 위한 방법이라고 생각하면 된다. 예를 들어, 이 문제를 풀기 위해서 반복문을 통해 문제를 풀어보았다. result = [] for i in range(0, x+1): for j in range(0, y+1): for k in range(0, z+1): if i+j+k != n: result.append([i,j,k]) 이렇게 반복문을 통해 리스트를 만들어도 해결할 수 있지만 List Comprehensions 를 ..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb44SqZ%2FbtrVgi45BLg%2FrkRkYPKyW4O81Th6qtOqE1%2Fimg.png)
3. 공공데이터포털 데이터 전처리하기(2)
2023. 1. 2. 19:08
데이터 엔지니어링/Airflow
개요 지난 번에 1704 건의 데이터를 전처리하기 앞서 1 건의 데이터를 가져와 내가 원하는 데이터로 변환하는 부분까지 해봤다. 여러 삽질 끝에 원하는 데이터를 만들 수 있었고 1 건의 데이터만 가져와서 테스트해봤기 때문에 이번에는 모든 데이터를 전처리해서 내가 원하는 데이터로 만들어봤다. 모든 데이터 전처리하기 나는 1704개의 데이터를 일괄 처리하기 힘들 것 같다고 생각이 들었고 한 건의 데이터마다 전처리 후에 추가해주면 되지 않을까 하는 생각이 들었다. 그래서 1건의 데이터를 가져와 전처리하고 추가해주는 소스를 작성하고 결과를 확인해봤다. 우선 기본적으로 이전에 적었던 내용을 기본으로 전처리를 진행했다. 크게 틀은 벗어나지 않았던 것 같다. 2. 공공데이터포털 데이터 전처리하기(1) 개요 공공데이터..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbhHqT4%2FbtrU1pdiKkJ%2FSqVk9zbKywB7tfWm6TGmt1%2Fimg.png)
2. 공공데이터포털 데이터 전처리하기 (1)
2022. 12. 31. 20:47
데이터 엔지니어링/Airflow
개요 공공데이터포털에서 데이터를 json 타입으로 가져오는 것까지 해봤고 데이터를 가져오는 과정을 Airflow DAG 로 만들어 작업을 수행해 원하는 디렉토리에 저장하는 과정까지 해봤다. 이번에는 그렇게 가져온 json 타입의 데이터를 가져와 원하는 데이터로 만드는 과정을 진행해보려고 한다. 그렇게 원하는 데이터가 만들어지면 Mysql 에 테이블을 생성하고 테이블에 저장하는 과정까지 생각하고 있다. 그래서 나는 Pandas 를 사용해 전처리를 진행하려고 하고 이러한 과정을 jupyter Notebook 에서 사용해보려고 한다. 해보기 앞서, 나는 다음과 같이 데이터를 만들어보고 싶다. 아래와 같이 컬럼명으로 되어있는 시간을 값으로 넣고 그 시간에 대한 혼잡도를 같이 넣고 싶었다. 하고나서는 쉬울줄 알았..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblfaFk%2FbtrUuiNp0dM%2F3qhsEFAH6koJHHKM3I845K%2Fimg.png)
1. 공공데이터포털 데이터 가져오기
2022. 12. 25. 23:37
데이터 엔지니어링/Airflow
공공데이터포털 데이터 가져오기 내가 사용하기로한 공공데이터포털의 데이터("서울교통공사_지하철혼잡도정보")를 가져오기 위해서 제공하는 API 를 통해 데이터를 가져올 수 있다. 포털에서 API 를 생성할 수 있도록 제공해주는 기능이 있는데 인증키를 등록하고 API 를 호출할 수 있는 URL 을 생성해준다. 그래서 다음과 같이 URL 을 실행하면 다음과 같이 데이터를 확인할 수 있다. curl -X GET "https://api.odcloud.kr/api/15071311/v1/uddi:b3803d43-ffe3-4d17-9024-fd6cfa37c284?page=1&perPage=10&serviceKey=[서비스키]" -H "accept: application/json" -H "Authorization: [인증..
0. Airflow 데이터 파이프라인 만들어보기 (토이 프로젝트)
2022. 12. 25. 22:50
데이터 엔지니어링/Airflow
개요 개인적으로 공부할겸 Airflow 를 사용해서 데이터 파이프라인을 만들어보려고 한다. 어떤 데이터를 사용해볼까 생각하다 공공데이터포털 이란 곳에서 공공데이터를 제공해주고 있어 사용해보기로 했다. https://www.data.go.kr 공공데이터 포털 국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase www.data.go.kr 공공데이터포털에서는 다양한 데이터 타입으로 데이터를 제공하고 있어 어떤 데이터를 다루어볼지 그리고 어떤 형식으로 데이터를 가져올지 등에 대해서 생각해봐야했다. 나는 수많은 데이터 중에서 서울교통공사_지하철혼잡도정보 라는 데이터를 가져..