Python

·Python
일단 수많은 에러와 cuda version과 wheel, nvcc 버전의 충돌 오류를 마주한 저는...결국 miniforge를 아예 밀고 다시 재설치를 하였답니다 오류를 해결하다 보니 점점 라이브러리 경로랑 버전도 다 꼬여서 그냥 밀고 재설치하는 게 제일 정답이라는 팩트를 알려드리며.. 아래와 같이 명령어를 순서대로 그대로 수행하면 일단 무조건 오류없이 되는 것 같네요 (다른 컴퓨터들에서도 테스트 완료) 명령어와 함께 해당 명령어 입력 후 출력된 제 터미널 결과들도 함께 첨부하였으니 확인하면 좋을 듯 합니다.에러는 당연히 없었고 그 흔한 warning 문구도 나오지 않았어요~ (와!) 단 아래 환경은 ubuntu 24.04, cuda version==13.0 조건이니 이 조건이 아니라면 명령어 수정이 필..
·Python
1. Polars(폴라스)란?Rust로 만들어져 Python, JavaScript 등에서 사용할 수 있는 고성능 데이터프레임 라이브러리로, Pandas의 강력한 대안으로 떠오르며 특히 대용량 데이터 처리에서 뛰어난 속도를 자랑한다.또한 멀티코어 CPU를 활용한 병렬처리, 벡터화된 연산, 지연 평가(lazy evaluation) 및 효율적인 메모리 관리(zero-copy 데이터 공유)를 통해 대규모 데이터를 빠르고 효율적으로 분석하는 데 특화되어 있다. - Rust 기반 + 병렬 처리 기본 : 연산을 내부적으로 멀티스레드로 잘 돌림- Arrow 컬럼형 memory format : column 단위 연산(filter/join/etc.)이 유리- Lazy API : 여러 연산을 계획으로 묶어서 최적화한 뒤 한..
·Python
모델링 코드를 작성하거나 전처리를 진행할 때 가장 중요한 것은 코드의 "효율성"이다.이 때 가장 많이 활용하는 것이 바로 vectorization(벡터화)인데, 아직도 나를 포함하여 많은 학생 및 연구자들은 매우 비효율적인 무한 for 루프 코딩 스타일에서 벗어나지 못하고 있는 것이 현실이다...따라서 이번 글을 통해 개념을 확실히 다져보도록 하자! (혹시 오개념이 있다면 댓글로 편하게 지적해주세요) 1. 벡터화가 뭐 그렇게 중요한가..?> 네!!! 중요해요!!!!! 많이들 벡터화=시간복잡도 감소 라고 생각하지만, 대부분의 경우 알고리즘적으로 Big-O는 동일하다. 예를 들어 N개 원소에 y = x*2 + 1을 적용하면 for문과 벡터화 모두 O(N)이다. 그럼에도 불구하고 벡터화가 빠른 이유는,- ..
·Python
1. 그래프의 개념 - 인접 행렬 / 인접 리스트그래프: 노드(vertex)와 간선(edge)을 이용한 비선형 데이터 구조보통 그래프는 데이터 간의 관계를 표현하는 데 사용데이터를 노드로, 노드 간의 관계나 흐름을 간선으로 표현하며, 간선은 방향이 있을 수도 있고 없을 수도 있음만약 관계나 흐름에서 정도를 표현할 필요가 있다면 가중치(weight)라는 개념을 추가하여 표현그래프의 구현 방식에는 인접 행렬(adjacency matrix)과 인접 리스트(adjacency list)가 있음 인접 행렬은 배열을 활용하여 구현하는 경우가 많음이때 배열의 인덱스는 노드, 배열의 값은 노드의 가중치로 생각하고, 인덱스의 세로 방향을 출발 노드, 가로 방향을 도착 노드로 생각하면 자연스럽게 그래프를 표현할 수 있음예:..
·Python
** 이것이 취업을 위한 코딩테스트다 with 파이썬 서적을 바탕으로 작성한 글입니다. - 코딩테스트에서의 구현(Implementation) : 머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정 어떤 문제를 풀든지 소스코드를 작성하는 과정은 필수이므로 구현 문제 유형은 모든 범위의 코딩테스트 문제 유형을 포함하는 개념이다. 흔히 구현 유형의 문제는 풀이를 떠올리는 것은 쉽지만 소스코드로 옮기기 어려운 문제를 의미한다. [구현하기 어려운 문제 유형]- 알고리즘은 간단하지만 코드가 지나치게 길어지는 문제- 특정 소수점까지 출력해야하는 문제- 문자열이 입력으로 주어졌을 때 한 문자 단위로 끊어서 리스트에 넣어야하는 파싱 문제등 사소한 조건 설정이 많은 경우에 코드로 구현하기 까다롭다고 볼 수 있다. [구현 ..
·Python
먼저 기존에 무게 limit에 포커스를 두었던 방식으로 풀었다가 틀린 버전의 코드를 보면서 분석을 작성해보겠다. [1차 시도 (실패)]def solution(people, limit): boat = 0 people.sort() # 오름차순 : [50, 50, 70, 80] temp = limit for man in people: if limit >= man: # 태울 수 있는 경우 limit -= man else: # 태울 수 없어서 새 보트 필요 boat += 1 # 지금까지 태운 사람들 용 보트 +1 limit = temp # limit 다시 초기화 ..
여백 ::
'Python' 카테고리의 글 목록