일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- string to list
- 웹페이지
- plotly dash
- 코랩 런타임
- 플라스크
- NLP
- 혁신성장부문
- Merge Repositories
- 파이썬
- to shp
- geoDataFrame
- Chat-GPT
- 백준
- 괄호 문제
- 2164 카드2
- colab runtime
- Python
- kmeans
- python buildpacks
- 알고리즘
- 해시태그
- geopandas
- 인스타그램
- convert to shp
- clustering
- 셀레니움
- 크롤링
- Crawling
- flask
- Selenium
- Today
- Total
목록전체 글 (76)
코딩코딩코딩
geometry 형식의 컬럼을 가지고 있는 데이터프레임을 shp file로 바꿔서 저장하려고 할 때 발생할 수 있는 오류의 종류 ㄱ) TypeError: Input must be valid geometry objects ㄴ) 'Series' object has no attribute 'has_z' 에러 방지 ㄷ) WKTReadingError: Could not create geometry because of errors while reading input. 1. 먼저 csv 파일로 저장되어 있는 geo file 을 불러옴 (pd.read_csv) 2. geometry column의 개별값에 wkt.load()를 적용해주어야 함 2-1. 위에 적어 둔 (ㄷ) 에러가 발생할 수 있는데, 이 때 에러 처리를 ..
파이썬에서 튜플을 사용해서 정렬해야 할 때가 있다. 백준 단어정렬 문제를 딕셔너리로 풀어보려다가 너무 복잡해져서 힌트를 좀 찾아보니 다들 튜플로 풀었길래 튜플 정렬에 관한 내용을 정리해보려고 한다. hansuho113.tistory.com/27 백준(BAEKJOON) 1181 단어정렬 - 파이썬(python) 처음에는 딕셔너리를 사용해서 {"단어":단어길이} 식으로 key, value 로 접근해서 풀려고 했는데 한 조건이 같을 때 다음 조건으로 정렬하는 부분을 구현하는 데 어려움이 있어서 튜플을 이용해서 hansuho113.tistory.com tuple_list = [ (3, 4), (1, 2), (2, 5) ] 위처럼 리스트의 원소가 튜플로 이루어져 있는 경우 정렬을 하기 위해서는 리스트의 sort(..
처음에는 딕셔너리를 사용해서 {"단어":단어길이} 식으로 key, value 로 접근해서 풀려고 했는데 한 조건이 같을 때 다음 조건으로 정렬하는 부분을 구현하는 데 어려움이 있어서 튜플을 이용해서 풀었다. import sys n = int(sys.stdin.readline()) # 문자를 입력받고 중복된 문자를 제거 한 후 리스트에 삽입 sentence = list(set([sys.stdin.readline().strip() for i in range(n)])) words = [(len(word), word) for word in sentence] # 튜플이 원소인 리스트 생성 words.sort(key=lambda word: (word[0], word[1])) # 단어 길이, 단어 순으로 오름차순 정..
sys.stdin.readline() 사용법 큐 관련 문제들은 시간제한을 굉장히 타이트하게 준다. 가장 기본적인 list 풀이도 deque와 굉장히 큰 성능차이를 보이는데, 이러한 문제에서는 입력값을 받는 것에도 신경써야 한다. 입력값을 반복적으로 여러 줄 입력받아야 한다면 input()이 아니라 sys.stdin.readline()을 사용해야 한다. * 다만 readline()은 줄 별로 입력받기 때문에 개행문자가 같이 받아지므로 주의해야 한다. ( int() 사용 ) import sys 1. 한 개의 정수를 한 줄에 입력받을 때 N = int(sys.stdin.readline()) 2. 여러 개의 정수를 한 줄에 입력받을 때 N_list = list(map(int, sys.stdin.readline(..
리스트의 첫 원소를 지우고 그 다음 원소를 맨 뒤로 보내는 간단한 문제였다. 처음에는 list의 pop과 append를 사용했었는데 시간초과가 떠서 다시 찾아보니 deque를 사용해서 풀어야 하는 문제였다. 처음 풀었던 것처럼 list.pop(0)을 하게되면 뒤에 남은 원소들을 모두 앞으로 땡겨오기 때문에 시간복잡도가 O(N)이 되는 반면에 deque의 leftpop을 사용하면 제거하고 뒤 원소들의 메모리를 건드리지 않기 때문에 시간복잡도가 O(1)이 되어 속도면에서 압도적이다. N의 크기가 커질수록 deque의 성능이 우수해지며, 특히 left관련 함수의 경우에 차이가 두드러진다. num = int(input()) from collections import deque cards = deque(range..
Stack 활용 * Stack은 LIFO(Last In First Out)의 형태를 갖는 자료구조 - Push, Pop 등의 메서드 이용 1. 입력받은 문자열을 앞에서부터 순차적으로 하나씩 접근 * 문자열은 크게 여는 괄호 "(", 닫는 괄호 ")" , 기타(문자) 로 이루어져 있음 2. (1) stack을 만들어두고 "("가 나오면 하나씩 push - 파이썬에서는 리스트의 append, pop을 활용하면 됨 (2) last_check = 0 이라는 변수를 만들어 둠 --> 마지막에 닫는 괄호 ")" 가 오는 경우 대비 3. ")" 가 나왔을 때 스택에서 하나씩 pop함 --> 담아뒀던 여는 괄호 "("가 하나씩 빠짐 - 예외 상황 - stack이 비어있는 경우 - 입..