작성
·
322
1
[14/25] 거주지(구)별 확진자는 어떻게 될까?
저는 자료를 다운로드 받지 않고, 현재 시점 기준으로 크롤링을 해온 데이터를 활용해서 실습하고 있습니다. 그런데 서울시 제공 데이터가 조금 바뀌어서 현재는 타지역 정보가 ('타시도', '한국', '기타') 이렇게 됩니다. 나름대로 알려주신 코드를 조금 바꾸고, 결과는 강의처럼 나오게 해보았는데요.
아직 판다스가 익숙치 않아서, 두 가지 궁금증이 있습니다.
궁금 포인트1)
어떻게 하는지 몰라서 하나씩 따로 따로 뽑았는데요. 이거를 한 줄로 할 수는 없을까요? '멀티 인덱스는 안된다' 이런 오류가 계속 나오네요.
궁금 포인트2)
이것도 위와 비슷한 맥락입니다. 하나하나 빼줬는데, 이것도 한 줄로 할 수 있을까요?
아래에 제가 쓴 코드를 첨부합니다.
# 거주지(구별) 확진자의 빈도수를 구하고 시각화 합니다.
gu_count = df["거주지"].value_counts()
gu_count.sort_values().plot.barh(figsize=(10,12))
# 궁금 포인트1
gu1 = gu_count[3:4].index
gu2 = gu_count[23:24].index
gu3 = gu_count[27:28].index
# 궁금 포인트2
gu_count = set(gu_count.index) - set(gu1) - set(gu2) - set(gu3)
df.loc[df["거주지"].isin(gu_count), "지역"] = df["거주지"]
df["지역"] = df["지역"].fillna("타지역")
df["지역"].unique()
답변 2
1
안녕하세요.
좋은질문을 주셨네요.
같은 과정을 조금 다르게 해보면 다음과 같이 서울인 구와 타지역을 나누기 위해 "구"로 끝나는 값만 모았습니다.
그리고 위에서 만든 변수로 서울에 해당되는 거주지만 가져와 봅니다.
서울이 아닌 데이터는 ~ 을 통해 not을 표현해 줍니다.
gu_count 는 시리즈 형태입니다. 시리즈에서 가져올 때는 다음과 같이 가져올 수 있습니다.
해당되지 않는데이터는 ~ 로 시리즈도 마찬가지로 가져옵니다.
그리고 두 번째 질문 주신 내용은 다음과 같이 익명함수를 사용해서 한 줄로 만들어 볼 수 있을거 같습니다.
0
우와 '구'로 꺼내면 하나하나 확인 안해봐도 되는데 생각 못한 방법이네요!! 감사합니다 :)
람다는 아직 익숙하지 못해서 이것도 생각지 못했는데ㅠㅠ 복습할 부분을 챙겼네요..!
친절하고 자세한 답변 감사드립니다!!