• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    해결됨

df.loc으로 인덱싱

21.12.18 16:18 작성 조회수 143

1

질문 있습니다.
8분대에
df_academy_selected=df_academy[df_academy['상권업종소분류명'].isin(academy_count_1000.index)]
이 부분에서 제가 이해한 바로는
df_academy['상권업종소분류명'].isin(academy_count_1000.index)가 상권 업종소분류명 중에서 1000개 이상 등장한 것들만 필터링을 해서
True와 False로 이루어진 시리즈가 나왔다는 것은 이해가 되었습니다
이제 df_academy로 한번 더 씌워서 조건에 해당하는 데이터들만 보려고 하는 것 같은데요
이때 왜 loc을 쓰지 않는지 궁금합니다.
[df_academy['상권업종소분류명'].isin(academy_count_1000.index)] 이것 자체가 행의 조건이라고 생각되어서 loc 을 써줘야한다고 생각했는데 loc없어도되는 이유가 궁금합니다. 그냥 True False로 이루어진 값은 loc을 굳이 쓰지 않아도 되는건가요?

답변 1

답변을 작성해보세요.

0

안녕하세요!

좋은 질문을 주셨네요!

.loc 는 사용해도, 사용하지 않아도 무방합니다.

질문주신 것처럼 .loc 로 불리언 인덱싱 값을 가져와도 되고 df[불리언인덱싱결과]로 가져와도 됩니다.

아래와 같은 방법으로 인덱싱 할 수 있는데 딱히 이유가 있어서 loc를 가져온 것은 아닙니다.

df.loc[행]

df.loc[행, 열]

df.loc[조건식, 열]

df[조건식]


사용하기 편하신 방법으로 사용해 주세요!