728x90
(10,4)데이터프레임 만들어서 컬럼명을 b,a,a,d로 설정
import pandas as pd
import numpy as np
np.random.seed(1234)
data = pd.DataFrame(np.random.randn(10, 4))
data.columns=['b','a','a','d']
print(data)
data.drop(labels=['a'], axis=1)
import pandas as pd
import numpy as np
np.random.seed(1234)
data = pd.DataFrame(np.random.randn(10, 4))
data.columns=['b','a','a','d']
print(data)

인덱스 첫번째 'a'를 지우고싶어서 컬럼인덱스로 1로 접근했는데 결과값은 엉뚱하게 나온다.
data.drop(data.columns[1], axis=1)

컬럼인덱스 1번 'a'와 이름이 같은 인덱스2번도 지워져 버림
컬럼이름이 같으면 이상하게 작동한다
해결방법
(1)
data = data.iloc[:, [j for j, c in enumerate(data.columns) if j != n]]
우선 drop으로 날리고 n자리에 지우고 싶었던 인덱스 번호만 써주면 나머지는 다시 살아난다.


방법 둘다 원리는 같다.
'파이썬 > 파이썬 기초' 카테고리의 다른 글
Python을 활용 Word 파일 생성 및 내용 수정 (18) | 2022.12.29 |
---|---|
Python을 활용 Excel 파일 생성 및 내용 수정 (9) | 2022.12.29 |
파이썬과 R에서 같은 난수 발생 패키지 SyncRNG (0) | 2022.12.14 |
파이썬 자료형의 값을 저장하는 공간, 변수 (2) | 2022.12.13 |
파이썬 문자열 (0) | 2022.12.12 |