pandas를 이용하면 편리한점이 참 많을 텐데 항상 numpy만 이용하는 현실 ..
그래서 pandas를 처음 이용하는 것을 가정하여 팁을 소개해 드려요.
아주 간단한 예제이니 colab으로 따라해 보셔도 좋을것 같아요.
pandas와 numpy 라이브러리를 불러옵니다
dyna= 'EID PID N1 N2\n1 1 1 2\n2 1 3 4\n3 2 5 6\n4 2 7 8\n5 3 9 10\n6 3 11 12'
위와 같은 텍스트가 있다고 가정합니다... 출력해보면 이렇게 나타납니다
이런 타입의 텍스트 파일을 이용해서 작업할 경우 유용한 방법인데요.
첫 째줄은 칼럼이 되고 두번째 줄부터 내용입니다.
내용은 공백으로 구분되기 때문에 아래와 같이 하나씩 구분할 수 있어요.
먼저 칼럼을 구분하였어요
dyn_el=[]
for i in range(len(dyn_list)-1):
dyn_el.append(dyn_list[i+1].split())
새로운 리스트를 만들어서 split으로 분리된 문자열 리스트를 담았습니다
리스트는 np.array()를 통해 배열로 변환할 수 있어요
변환된 배열을 판다스 데이터프레임으로 변환합니다
dyn_pd= pd.DataFrame(dyn_ar, columns= col)
코드로 칼럼을 적용한 판다스 데이터프레임이 만들어졌어요 주피터노트북에서는 위와 같이 테이블을 보여줘요 ~.~
이제 만들어진 데이터프레임의 이용법을 몇가지 소개해드릴게요
특정 칼럼 값을 갖는 데이터를 빼오는 방법입니다
P1=dyn_pd[dyn_pd['PID']=='1']
위 코드로 PID가 1인 로우를 빼올 수 있습니다
PID가 2인 데이터를 빼온 결과에요
다음으로 특정 칼럼만 분리하는 방법입니다
위와 같이 입력하여 N1 N2칼럼을 분리하였어요
이렇게 다수의 칼럼을 분리하실 수 있답니다
다음은 반대로 특정 로우를 빼오는 방법입니다
이렇게 iloc(index) 입력으로 빼올수 있어요
다음 특정 로우를 제거하는 방법입니다
drop()기능으로 분리되었어요.
마지막으로 특정 칼럼을 제거해 보겠습니다.
dyn_drop2=dyn_pd.drop(['EID'],axis=1)
위와 같이 입력하여 EID 칼럼을 제거하였습니다
#공백 #구분 #split #array #np #shape #DataFrame #pd #특정값을갖는데이터분리 #칼럼분리 #칼럼제거 #특정로우분리 #drop #특정로우제거 #특정칼럼제거
'파이썬 팁' 카테고리의 다른 글
비주얼스튜디오 코드(vscode) 다중 블럭 들여쓰기, 내어쓰기 단축키 (3) | 2020.09.26 |
---|---|
파이썬 코드 실행시간 측정방법 - timeit (0) | 2020.09.26 |
python 크기 순서대로 번호 매기기 - 너는 몇번째로 큼?.? (0) | 2020.09.26 |
파이썬으로 번역하기 - 영어 ->독일어 (feat. colab, translate) (0) | 2020.09.26 |
파이썬으로 MAC address 추출하는 배치파일 만드는 방법 - uuid (0) | 2020.09.26 |