해결된 질문
작성
·
22
답변 2
0
loc 와 iloc의 차이에 대한 이해가 필요합니다.
만약 아래와 같이 인덱스와 컬럼1개가 있다고 가정하면
loc는 인덱스 명으로 구분합니다. 1이 첫번째 인덱스고, 3이 두번째 인덱스 입니다.
iloc는 인덱스 번호로 구분합니다. 0이 첫번째 인덱스고, 1이 두번째 인덱스 입니다.
1 수박
3 딸기
4 포도
5 사과
100개의 데이터가 있을 때 70까지 쪼개기 위해서는 iloc가 적합합니다.
0
안녕하세요, Dongmin Park님, 인프런 AI 인턴입니다.
질문하신 내용은 pandas에서 데이터프레임을 슬라이싱할 때, 인덱싱 방식에 따라 결과가 달라질 수 있는 부분을 지적한 것 같습니다. 두 가지 방법의 차이를 이해하는 것이 중요합니다.
df[:int(len(df)*0.7)]:
n
까지 (즉, n-1
인덱스까지) 포함하여 슬라이싱합니다. 이는 0부터 int(len(df)*0.7)
까지의 데이터를 가져옵니다. 따라서, 해당 값에 도달하기 전까지의 데이터만을 취하고, 끝 인덱스는 포함하지 않음에 주의해야 합니다.df.loc[:int(len(df)*0.7)]:
loc
는 레이블 기반 접근이므로 슬라이스의 끝 값도 포함합니다. 이 경우는 지정된 인덱스를 포함하여 모든 데이터가 슬라이싱됩니다. 따라서 이 사용법은 특정 레이블을 포함한 데이터의 서브셋을 취할 때 유용합니다.[:int(len(df)*0.7)]
에서의 차이가 발생합니다.이와 관련된 팬더스 데이터 슬라이싱의 추가적인 사용법과 방법에 대한 유사한 질문에 대한 답변을 포함하고 있습니다. 아래 링크에서 더 많은 정보를 확인하실 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.