본문 바로가기

분류 전체보기327

pandas - (데이터 정제 및 준비) 7.1 누락된 데이터 처리하기 pandas객체의 모든 기술통계는 누락된 데이터를 배제하고 처리한다. 산술 데이터에 한해서 pandas는 누락된 데이터를 실숫값인 NaN으로 취급한다. 이는 누락된 값을 쉽게 찾을 수 있도록 도와준다. 7.1.1 누락된 데이터 골라내기 누락된 데이터를 골라내기 위해 pandas.isnull이나 불리언 색인을 사용해서 직접 골라낼 수 있다. Series의 dropna 메서드는 널이 아닌 데이터와 색인값만 들어있는 객체를 반환. DataFrame의 dropna는 기본적으로 NA값을 하나이상 포함한 로우를 모두 제외시킨다. how 옵션에 'all'을 넘기면 모든 값이 NA인 로우만 제외시킨다. 컬럼을 제외시키려면 옵션으로 axis=1을 넘겨주면 된다. DataFrame의 로우를 .. 2020. 7. 22.
pandas - (데이터 로딩과 저장, 파일 형식) 6.1 텍스트 파일에서 데이터를 읽고 쓰기 보통 read_csv, read_table을 많이 쓴다. 텍스트 데이터를 DataFrame으로 읽어올 때 아래와 같은 옵션들을 설정할 수 있다. 1) 색인: 반환하는 DataFrame에서 하나 이상의 컬럼을 색인으로 지정할 수 있다. (지정안해도됨) 2) 자료형 추론과 데이터 변환: 사용자 정의 값 변환과 비어있는 값을 위한 사용자 리스트를 포함한다. 3) 날짜 분석: 여러 컬럼에 걸쳐있는 날짜와 시간 정보를 하나의 컬럼에 조합한다. 4) 반복: 여러 개의 파일에 걸쳐 있는 자료를 반복적으로 읽어올 수 있다. 5) 정제되지 않은 데이터 처리: 로우나 꼬릿말, 주석 건너뛰기 또는 천 단위마다 쉼표로 구분된 숫자같은 사소한 것들의 처리 이외에도 read_csv의 경.. 2020. 7. 21.
pandas - (기술 통계 계산) 5.3 기술 통계 계산과 요약 pandas 객체의 수학,통계 메서드 대부분은 하나의 Series나 DataFrame의 로우나 컬럼에서 단일 값(합,평균 등)을 구하는 축소(reduction)혹은 요약 통계(summary statistics)에 속한다. 계산 시 NaN데이터를 제외하도록 설계됨 df = pd.DataFrame([[1.4, np.nan], [7.1, -4.5], [np.nan, np.nan], [0.75, -1.3]], index=['a', 'b', 'c', 'd'], columns=['one', 'two']) DataFrame의 sum 메서드를 호출하면 각 로우의 합을 담은 Series를 반환한다. axis=1을 넘기면 각 컬럼의 합을 반환한다. df.sum() #one 9.25 #two .. 2020. 7. 21.
cf #656 div3 E - Directing Edges(위상정렬, 사이클 유무) https://codeforces.com/contest/1385/problem/E 방향그래프와 무향그래프가 섞인 그래프에서 위상정렬을 구해야 해서 헷갈렸다. 위상정렬 결과로 사이클 판단하는 방법도 숙지해 뒀어야 하는 문제 정점u,v사이엔 최대 하나의 무향또는 유향간선만 존재하는 그래프가 주어진다. 유향간선을 적절히 조정해서 accyclic그래프를 만들 수 있다면 그 간선들을 출력하라 손으로 좀 그리다보면 유향간선만 가지고 사이클이 존재하지 않는다면 항상 정답이 존재함을 알 수 있다. 유향간선 기준 ind로 topological sort를 한 순서벡터로 각 정점마다 순서를 매긴다. 유향간선 u->v 중 rank[u]>rank[v]인 경우가 존재하면 사이클이 있다는 것 의미함. 사이클이 없다면 ,모든 간선을.. 2020. 7. 20.