반응형
pandas 데이터 프레임 (df)이 있고 다음과 같이하고 싶습니다.
newdf = df[(df.var1 == 'a') & (df.var2 == NaN)]
NaN을 np.NaN
, 'NaN'
또는 'nan'
등으로 바꾸려고했지만 True로 평가되는 것은 없습니다. pd.NaN
이 없습니다.
위의 표현식을 평가하기 전에 df.fillna (np.nan)
를 사용할 수 있지만 그것은 끔찍하게 느껴지고 나중에 pandas 형식의 NaN을 식별 할 수있는 것에 의존하는 다른 pandas 작업을 방해하는지 궁금합니다. .
나는이 질문에 대한 쉬운 답이 있어야한다는 느낌을 받았지만, 어쩐지 그것은 나를 피했다. 조언을 주시면 감사하겠습니다. 감사합니다.
해결 방법
이것은 NaN
이 NaN
을 포함하여 어떤 것과도 같지 않기 때문에 작동하지 않습니다. 대신 pd.isnull (df.var2)
을 사용하세요.
참조 페이지 https://stackoverflow.com/questions/25050141
반응형
'파이썬' 카테고리의 다른 글
파이썬 람다 함수를 사용하여 중첩 된 목록에서 합계 찾기 (0) | 2020.12.11 |
---|---|
파이썬에서 백 슬래시로 문자열 분할 (0) | 2020.12.11 |
파이썬 각 하위 목록의 첫 번째 항목 추출 (0) | 2020.12.11 |
파이썬 n 번째 행마다 판다 (0) | 2020.12.11 |
파이썬 작동하지 않는 특정 열에 대해 큰 따옴표로 CSV 파일 작성 (0) | 2020.12.11 |
댓글