본문 바로가기
반응형

삭제5

파이썬 데이터프레임 다루기 오랜만에 사용하려고 하면 늘 헛갈리는 파이썬 데이터프레임 다루기. 사실 헛갈리는 이유는 동일한 결과를 낼 수 있는 방법이 너무 많기 때문이라고 생각한다. 개인적으로 가장 심플하다고 생각하는 방법 하나씩만 정리해 둔다. 1. 특정 열 인덱싱 df_temp = df.loc[:, ['a']] df['a'] 같은 방식은 잊어버리자. 나중에 행 인덱싱할 때 꼭 df[0,] 같은 것도 동작할 것처럼 착각하게 된다. 그냥 인덱싱은 무조건 loc 사용한다고 생각하는 편이 맘 편하다. [:] 은 all 의 의미. 열 이름을 굳이 리스트에 담아 전달하는 것은 익숙해질 때까지 다소 어색하지만 두 가지 이점이 있다. 1. 하나의 열만 인덱싱하더라도 결과가 데이터프레임으로 반환된다. (df.loc[:, 'a'] 의 결과는 판다.. 2022. 3. 28.
[엑셀] 홀수 행만 삭제하기 다음과 같은 자료가 있다고 할 때 홀수 행은 중복이므로 삭제하면 좋을 것이다. 다음과 같이 한 열을 추가한 후 살릴 행에는 임의의 문자를, 삭제할 행은 공백으로 둔다. 이제 그 두 셀을 범위로 잡고, 오른쪽 아래 핸들을 잡아 아래로 드래그하면 위와 같이 문자가 한 셀을 건너뛰고 연속적으로 복사된다. 이제 범위를 그대로 둔 채 [찾기 및 선택] - [이동 옵션]을 선택하고 [빈 셀]을 선택하면 다음과 같은 영역이 선택된다. 이제 선택된 영역에서 오른쪽 버튼으로 메뉴를 호출하고 [삭제]를 선택한 후 [행 전체]를 선택하면 다음과 같이 선택된 행만 삭제된다. 2017. 3. 9.
[R.아르] 객체 지우기 rm() / 특정 문자가 포함된 행 추출하기 grep() ls()는 현재 사용하고 있는 객체Object 들의 리스트를 보여준다. (ls: list objects) 만일 이 중에 필요 없는 객체를 지우고 싶다면 rm() 명령을 사용하면 된다. (rm: remove) 여러 개의 객체를 지우려면 콤마(,)로 구분하여 입력한다. 삭제할 개체가 너무 많다면 그 목록을 하나의 벡터로 구성하여 rm()에 넣을 수도 있다. 이럴 때는 [list=] 옵션을 사용한다. 이름에 temp가 들어간 객체들만 지우려면 어떻게 해야 할까? 일단 temp가 들어간 객체들의 이름으로 만들어진 벡터가 있어야 한다. grep() 은 어떤 벡터에서 주어진 문자열을 포함하는 요소의 번호를 반환한다. ls() 벡터의 2, 3, 4번 요소가 temp를 포함하고 있다는 얘기다. 그러므로 ls()벡터에서.. 2016. 9. 30.
[R.아르] 중복된 행 삭제하기 unique() / duplicated() R에서 중복된 행을 삭제하려면 unique()를 사용하면 된다. 다음과 같은 x에서 unique()를 실행시키면 중복된 행들이 사라지는 것을 알 수 있다. 중복된 행이 몇 개나 되는지 숫자가 알고 싶을 때는? 지난 번에 본 nrow를 쓰면 되겠다. 여러 개의 열이 있을 경우에는 행의 모든 값이 완전히 동일할 때만 중복으로 간주한다. 예를들어 다음과 같은 x에서 unique()를 실행시키면 4행과 5행은 서로 중복이 아니므로 제거되지 않는다. 간혹 중복된 행들을 직접 눈으로 확인하고 싶을 때가 있다. 이럴 땐 duplicated() 함수를 사용한다. 다음과 같은 x에서 duplicated()를 사용하면 중복된 행을 TRUE로, 아닌 행을 FALSE로 반환해 준다. 진리값이 보기 어렵다면 which()안에 .. 2016. 9. 12.
[R.아르] R 행,열 삭제 R에서 쓰이는 데이터프레임은 행과 열을 갖고 있다.[2, 1] 은 2행 1열,[1, 3] 은 1행 3열을 의미한다. 같은 원리로, 쉼표의 위치에 따라[2,] 은 '2행'을 의미하고[,3] 은 '3열'을 의미한다 행과 열이 많이 필요할 것 같으니, R에 기본 저장 되어 있는 'iris' 데이터를 보자 150행짜리라, 첫 몇 행만 보려고 head()에 넣었다. 여기서 1행만 뽑고 싶다면 이렇게 1에서 10행까지만 뽑고 싶다면 이렇게 1에서 3열까지만 뽑고 싶다면 이렇게 하면 된다. 3열까지 뽑을 경우 행은 150 행일 것이므로 head()로 조금만 보았다:) 이제 x에서 1행을 삭제해 보자. 삭제는 (-) 기호를 쓰면 된다. 마찬가지로 2, 4, 6 행을 삭제하려면 삭제시에는 행이름이 아니라 행의 순서로 판.. 2016. 8. 30.
반응형