development

pandas에서 여러 열 삭제

big-blog 2020. 12. 8. 18:53
반응형

pandas에서 여러 열 삭제


다음 코드를 사용하여 팬더 데이터 프레임의 인덱스 번호로 여러 열 (데이터 세트의 열 2와 70, 각각 1과 69로 인덱싱 됨)을 삭제하려고합니다.

df.drop([df.columns[[1, 69]]], axis=1, inplace=True)

다음과 같은 오류가 발생합니다.

TypeError: unhashable type: 'Index'

그리고 내 코드에서 [1, 69]가 강조 표시되고 다음과 같이 표시됩니다.

Expected type 'Integral', got 'list[int]' instead

다음 코드는 내가 원하는 것을 성공적으로 수행하지만 두 줄의 반복 코드에서 (먼저 col index 69를 삭제 한 다음 1을 삭제하고, 이전 열을 삭제하면 이후 열의 색인이 변경되므로 순서가 중요합니다). 단순히 목록으로 둘 이상의 열 인덱스를 지정할 수 있다고 생각했지만 위의 내용이 잘못되었을 수 있습니까?

df.drop([df.columns[69]], axis=1, inplace=True)
df.drop([df.columns[1]], axis=1, inplace=True)

위의 첫 번째 코드 스 니펫과 유사한 한 줄로이 작업을 수행 할 수있는 방법이 있습니까?


을 사용하여 목록으로 래핑 할 필요가 없으며 [..]열 인덱스의 하위 선택 만 제공하면됩니다.

df.drop(df.columns[[1, 69]], axis=1, inplace=True)

인덱스 객체는 이미 목록과 같은 것으로 간주되기 때문입니다.


이 시도

df.drop(df.iloc[:, 1:69], inplace=True, axis=1)

이것은 나를 위해 작동합니다

참고 URL : https://stackoverflow.com/questions/26347412/drop-multiple-columns-in-pandas

반응형