DataFrame 다루기DataFrame 인덱싱DataFrame 조건으로 인덱싱

Q

iphone_df[]와 iphone_df.loc[]

조회 1417

좋아요 11

2019년 3월 24일




댓글 4

베스트 댓글
2019년 3월 24일
'iphone_df['디스플레이']>5]은 iphone_df.loc[:,[False,True,False,True,True,True,True]] 값이 되서' 혹시 이 부분을 좀 더 설명해 주실수 있나요? [이 문제](https://www.codeit.kr/questions/5482)에 대한 후속 질문인가요?
베스트 댓글
2019년 3월 25일
DataFrame 조건으로 인덱싱강의에서 iphone_df.loc[]로 받아오다가 condition부분에서만 iphone_df[]로받아 온 부분이 잘이해가 되지 않아서 질문드렸씁니다.
베스트 댓글
2019년 3월 25일
iphone_df.loc[True,False...] 이런식으로 안에 불린값이 들어가서 True행을 가져오는 건 이해가되는데 iphone_df[]는 원래 해당열을 가져오는 방식이었는데
베스트 댓글
2019년 3월 25일
강의에서도 그렇고 실제로소 iphone_df[]안에 조건식을 넣었을때도 같은 결과가 나오는것이 이해가되지 않습니다
A
1개의 답변이 있어요
커뮤니티 파트너 채택



2019년 3월 25일

댓글 6

2019년 3월 26일
불린도 이와 비슷한 현상이라는게 잘 이해가안됩니다 ㅜㅜ
2019년 3월 27일
`df[]`에 들어간다고 해서 항상 column을 의미하는 건 아니라는 뜻입니다!
2019년 3월 27일
`df["col1"]`이나 `df[["col1","col7"]]`은 column에 대한 인덱싱 방법이고, `df["row3":"row5"]` 는 row에 대한 인덱싱 방법입니다.
2019년 3월 28일
아.. 그건이해됬습니다 근데 아직 이거는 아직 잘이해가 안되는 것같에요 iphone_df.loc[iphone_df['디스플레이']>5] 와 iphone_df[iphone_df['디스플레이']>5]의 결과가 똑같이 나오는거는 아직이해가 되지 않네요 ㅜㅜ.. iphone_df[iphone_df['디스플레이']>5]는 df['row3':'row5' ]인덱싱 방식이 아니라 iphone_df['디스플레이']>5 ]는 TRUE나 FALSE로 이루어져있는 1차원 Series배열을 반환하게되는데 어떻게 저런 결과나 나오는지 잘모르겠습니다 ㅜㅜ
2019년 3월 31일
동욱님이 말씀해주신 문법 차이 몇가지를 제외하고는 `df[]`와 `df.loc[]`은 비슷하게 쓰인다고 생각하셔도 될 것 같습니다. 예를 들어 `df[조건문]`에서 조건문 (iPhone예의 경우 말씀하시는 1차원 Series)이 모든 row에 대한 boolean list, Series일 경우 `df.loc[조건문]`과 일치합니다.
2019년 7월 15일
링크 여기 Randy님의 답변처럼 조건문은 slicing 처리가 되는 듯 합니다.

(주) 코드잇

대표강영훈

개인정보보호책임자강영훈

이메일support@codeit.kr

사업자 번호313-86-00797

통신판매업제 2019-서울중구-1034 호

주소서울특별시 중구 청계천로 100 시그니쳐타워 동관 10층 코드잇