728x90

파이썬 10

[데이터시각화] Seaborn Boxplot 예제 코드 설명

0. 패키지 및 데이터 불러오기 import seaborn as sns tips = sns.load_dataset("tips") 1. 기본 가로형 세로형 Boxplot 그리기 ax1 = sns.boxplot(x=tips["total_bill"]) # 가로형 boxplot, orient="h" 명시적으로 설정 가능 ax2 = sns.boxplot(x="total_bill", orient="v", data=tips) # 세로형 boxplot 2. 집단별 Boxplot 그리기 ax = sns.boxplot(x="day", y="total_bill", data=tips) ax = sns.swarmplot(x="day", y="total_bill", data=tips, color=".25") # 데이터 포인트 나..

[프로그래머스] 폰켓몬 풀이 (Python 코드 첨부)

문제 설명 당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다. 홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 폰켓몬 중 2마리를 고르는 방법은 다음과 같이 6가지가 있습니다. 첫 번째(3번), 두 번째(1번) 폰켓몬을 선택 첫 번째(3번), 세 번째(2번) 폰켓몬을 선택 첫..

알고리즘 2020.09.14

[프로그래머스] 비밀지도 풀이 (Python 코드 첨부)

문제 설명 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 공백(" ) 또는벽(#") 두 종류로 이루어져 있다. 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 지도 1과 지도 2라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공백인 부분은 전체 지도에서도 공백이다. 지도 1과 지도 2는 각각 정수 배열로 암호화되어 있다. 암호화된 배열은 지도의 각 가로줄에서 벽 부분을 1, 공..

알고리즘 2020.09.12

[프로그래머스] 다트 게임 풀이 (Python 코드 첨부)

문제 설명 카카오톡에 뜬 네 번째 별! 심심할 땐? 카카오톡 게임별~ 카카오톡 게임별의 하반기 신규 서비스로 다트 게임을 출시하기로 했다. 다트 게임은 다트판에 다트를 세 차례 던져 그 점수의 합계로 실력을 겨루는 게임으로, 모두가 간단히 즐길 수 있다. 갓 입사한 무지는 코딩 실력을 인정받아 게임의 핵심 부분인 점수 계산 로직을 맡게 되었다. 다트 게임의 점수 계산 로직은 아래와 같다. 다트 게임은 총 3번의 기회로 구성된다. 각 기회마다 얻을 수 있는 점수는 0점에서 10점까지이다. 점수와 함께 Single(S), Double(D), Triple(T) 영역이 존재하고 각 영역 당첨 시 점수에서 1제곱, 2제곱, 3제곱 (점수1 , 점수2 , 점수3 )으로 계산된다. 옵션으로 스타상(*) , 아차상(#..

알고리즘 2020.09.11

[프로그래머스] 키패드 누르기 풀이 (Python 코드 첨부)

문제 설명 스마트폰 전화 키패드의 각 칸에 다음과 같이 숫자들이 적혀 있습니다. 이 전화 키패드에서 왼손과 오른손의 엄지손가락만을 이용해서 숫자만을 입력하려고 합니다. 맨 처음 왼손 엄지손가락은 * 키패드에 오른손 엄지손가락은 # 키패드 위치에서 시작하며, 엄지손가락을 사용하는 규칙은 다음과 같습니다. 엄지손가락은 상하좌우 4가지 방향으로만 이동할 수 있으며 키패드 이동 한 칸은 거리로 1에 해당합니다. 왼쪽 열의 3개의 숫자 1, 4, 7을 입력할 때는 왼손 엄지손가락을 사용합니다. 오른쪽 열의 3개의 숫자 3, 6, 9를 입력할 때는 오른손 엄지손가락을 사용합니다. 가운데 열의 4개의 숫자 2, 5, 8, 0을 입력할 때는 두 엄지손가락의 현재 키패드의 위치에서 더 가까운 엄지손가락을 사용합니다. 4..

알고리즘 2020.09.07

[Python] 파이썬 데코레이터 Decorator from scratch in Python

1. 일급객체(first-class object) : 컴퓨터 프로그래밍 언어 디자인에서 다른 객체들에 일반적으로 적용 가능한 연산을 모두 지원하는 객체를 의미함. (ex. 매개 변수로 넘기기, 수정하기, 변수에 대입하기, 동일 비교하기 등) 1960년대, 영국의 컴퓨터 과학자 크리스토퍼 스트래치가 알골의 실수와 프로시저를 비교함으로써 일급 객체와 이급 객체의 개념에 대해 처음으로 언급함. 로빈 포플스톤은 일급 객체를 구성하는 요소는 다음의 기본적인 권리가 있다는 정의를 내림. 모든 요소는 함수의 실제 매개변수가 될 수 있다. 모든 요소는 함수의 반환 값이 될 수 있다. 모든 요소는 할당 명령문의 대상이 될 수 있다. 모든 요소는 동일 비교의 대상이 될 수 있다.z1990년대에 들어 미국의 컴퓨터 과학자 ..

프로그래밍 2020.06.07

[자료구조] Python 파이썬으로 단일연결 정렬 리스트 구현하기 코드 설명

class Node: def __init__(self, data): self.data = data self.next = None class SinglySortedLinkedList: def __init__(self): self.head = None self.count = 0 def append(self, node): if self.count == 0: self.head = node self.count = 1 else: cur_node = self.head prev_node = None # cur_node의 data와 node의 data를 비교하며 삽입 위치 파악 while cur_node != None and cur_node.data

프로그래밍 2020.06.02

[알고리즘] 파이썬으로 정렬 알고리즘 구현하기

파이썬으로 구현한 선택 정렬, 버블 정렬, 삽입 정렬, 병합 정렬, 쉘 정렬입니다. 1. 선택 정렬(Selection Sort) 오름차순 arr = [1, 5, 3, 4, 2, 88, 4, 7, -1, 0] n = len(arr) for i in range(0, n-1): least = i for j in range (i+1, n): if arr[least] > arr[j]: least = j arr[i], arr[least] = arr[least], arr[i] print(arr) # [-1, 0, 1, 2, 3, 4, 4, 5, 7, 88] 2. 버블 정렬(Bubble Sort) 오름차순 arr = [1, 5, 3, 4, 2, 88, 4, 7, -1, 0] n = len(arr) for i in ra..

알고리즘 2020.05.11

[파이썬] PyQt 관련 유용한 사이트 모음

PyQt 학습이나 개발 시 참고할 만한 튜토리얼이나 예제 사이트입니다. 국내 참고 사이트 1. 예제로 배우는 PyQt PyQt5 위젯이나 간단한 PyQt 활용 프로그램 예제 코드가 게시되어 있습니다. 타 국내 사이트들과 비교해 보았을 때 상당히 많은 예제가 등록되어 있으므로 PyQT 입문자에게 추천합니다. PyQT의 소개와 특징 - 예제로 배우는 PyQt PyQT 는 영국의 Riverbank Computing 이라는 곳에서 C++ 의 Cross Plaform GUI Framework 중 하나인 QT를 파이썬 모듈로 변환해 주는 툴을 만들며 시작되었다. 왼쪽 투박한 노란 그림은 Riverbank Computing의 로고이며 홈페이지는 접근성을 고려해서인지 텍스트 위주의 페이지가 대부분이지만 PyQT를 사용..

프로그래밍 2020.05.05

[데이터 분석] 서울에서 면적 대비 카페가 가장 많은 동은?

서울에서 면적 대비 카페가 가장 많은 동은 어디일까? 1. 주제 선정 한국의 카페 시장은 포화상태에 이르렀다. 전국에 7만1000여 곳의 커피 전문점이 영업 중인 가운데 지난 한 해 카페 창업 건수는 1만4000개, 폐업 건수는 9000개 수준으로 폐업 건수보다 창업 건수가 많은 상황이 지속되고 있다. 실제로 ‘한 집 건너 카페’라는 말처럼 한 골목에서 여러 카페가 함께 영업하고 있거나 심지어 한 건물에서 두세 개의 카페가 영업하고 있는 상황을 종종 목격할 수 있었다. 이에 다른 지역보다 카페가 상대적으로 많이 분포되어 있는 서울에서 각 법정동의 면적 대비 카페가 가장 많은 동은 어디일까라는 궁금증을 가지게 되어 데이터 분석을 통해 이를 알아보고자 하였다. (참고: 한집 건너 카페..커피숍사업자 1년새 ..

728x90