[DataFrame] Pandas DataFrame 다루기 - iloc & loc, 값 변경

2023. 8. 12. 15:00·Python
반응형

판다스 데이터프레임에 대해 학습 후 정리한 포스팅 입니다.

 

이번 포스팅에서는 판다스 데이터프레임의 iloc & loc에 대해 학습합니다.

 

데이터프레임의 데이터에 접근하는 인덱싱 방법인 iloc & loc에 대해 알아보겠습니다.

 

 

 

 

 

I) iloc 

1. iloc: interger location을 의미한다. 정수 기반 인덱싱을 통해 DataFrame의 데이터에 접근이 가능하다. 

import pandas as pd

# 샘플 DataFrame 생성
data = {
    'Name': ['Kim', 'Lee', 'Choi', 'Ryu', 'Do'],
    'Age': [25, 30, 22, 28, 35],
    'City': ['Seoul', 'Anyang', 'Busan', 'Suwon', 'Incheon']
}
df = pd.DataFrame(data)

# iloc를 사용하여 정수위치 데이터에 접근
value = df.iloc[2, 1]  # 2번 인덱스 행과 1번 인덱스 열에 접근
print(value)  # 결과: 22

# 단일 열에 접근 
column = df.iloc[:, 0]  # Column의 인덱스가 0인 모든 Rows에 접근 (Name column)
print(column)
# 결과:
# 0       Kim
# 1       Lee
# 2      Choi
# 3       Ryu
# 4        Do
# Name: Name, dtype: object

# 단일 행에 접근 
row = df.iloc[3, :]  # 행 인덱스가 3인 모든 열에 접근
print(row)
# 결과:
# Name       Ryu
# Age         28
# City      Suwon
# Name: 3, dtype: object

 

 

 

II) loc 

# loc를 사용하여 라벨 인덱싱 데이터에 접근
value = df.loc[1, 'Age']  # 행 label 1, 열 label 'Age'
print(value)  # Output: 30

# Access a single column
column = df.loc[:, 'City']  # 모든 행, 열 label 'City'
print(column)
# Output:
# 0          Seoul 
# 1         Anyang
# 2          Busan
# 3          Suwon
# 4        Incheon
# Name: City, dtype: object

# Access a single row
row = df.loc[2, :]  # 행 label 2, All 열
print(row)
# Output:
# Name    Choi
# Age       22
# City   Busan
# Name: 2, dtype: object

 

 

III) 데이터프레임의 값 변경 시 활용하는 iloc & loc 

1. iloc를 사용하여 값 변경

# iloc를 사용하여 값 변경
# 두 번째 행 (인덱스 1)의 나이를 31로 변경
df.iloc[1, 1] = 31
print(df)

iloc는 DataFrame의 행과 열을 정수 위치(인덱스)를 기반으로 선택하는 방식입니다.

예를 들어, df.iloc[1, 1]은 1번째 행과 1번째 열에 해당하는 값을 선택합니다.

변경할 값의 위치를 정수 인덱스로 명시하여 값을 변경할 수 있습니다.

     Name  Age      City
0     Kim   25     Seoul
1     Lee   31    Anyang
2    Choi   22     Busan
3     Ryu   28     Suwon
4      Do   35   Incheon

2. loc를 사용하여 값 변경

# loc를 사용하여 값 변경
# 'Choi' 이름을 가진 사람의 나이를 23으로 변경
df.loc[df['Name'] == 'Choi', 'Age'] = 23
print(df)

loc는 DataFrame의 행과 열을 레이블(이름)을 기반으로 선택하는 방식입니다.

예를 들어, df.loc[df['Name'] == 'Choi', 'Age']는 'Name' 열이 'Choi'인 행에서 'Age' 열의 값을 선택합니다.

변경할 값의 위치를 레이블로 명시하여 값을 변경할 수 있습니다.

     Name  Age      City
0     Kim   25     Seoul
1     Lee   31    Anyang
2    Choi   23     Busan
3     Ryu   28     Suwon
4      Do   35   Incheon

사용 시 데이터프레임의 구조와 작업에 맞게 선택하면 됩니다.

 

 

 

 

 

 

 

 

<Summary>

- 데이터프레임 (iloc & loc, 데이터프레임 값 변경)

 

*유의사항

- AI 산업기능요원이 공부하여 남긴 정리입니다.

반응형
저작자표시 (새창열림)

'Python' 카테고리의 다른 글

[PyTorch] AI 모델 저장 & 불러오기  (0) 2023.08.15
[argparse] Python 스크립트 실행 시 인자 값 전달하기  (0) 2023.08.13
[DataFrame] Pandas DataFrame 다루기 - 특징, 생성, column 수정, index 수정  (0) 2023.08.11
[파이썬] 정렬 함수 (sort VS sorted)  (1) 2023.02.04
[파이썬] 리스트 역순으로 저장/출력하기  (0) 2023.01.23
'Python' 카테고리의 다른 글
  • [PyTorch] AI 모델 저장 & 불러오기
  • [argparse] Python 스크립트 실행 시 인자 값 전달하기
  • [DataFrame] Pandas DataFrame 다루기 - 특징, 생성, column 수정, index 수정
  • [파이썬] 정렬 함수 (sort VS sorted)
성 언
성 언
AI 학과 3학년 학생이자 RAG 기반 LLM 챗봇 개발 회사에서 근무 중입니다. AI 챗봇 개발과 관련된 기술, 연구, 그리고 실험 과정에서 얻은 인사이트를 공유합니다. 최신 AI 기술을 함께 탐구하며 성장해 나가요!
    반응형
  • 성 언
    AI EON
    성 언
  • 전체
    오늘
    어제
    • AII
      • NLP
      • AI Paper Review
      • MLOps
      • Python
      • Algorithm
      • Memo
      • Server Developer
        • Node.js
        • DataBase&Data Engineering
        • Server Basic
      • MATH
        • Linear Algebra
        • AI
      • etc
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    스택
    문서 자동화
    배타 잠금
    배열의 모양 변경
    파이썬 문서 자동화
    word 자동화
    리랭커
    NVML
    팬텀 읽기
    백준
    node.js
    docx-template
    파이썬
    Signature 초격차 패키지
    알고리즘
    map 함수
    비반복 읽기
    c++
    패스트캠퍼스 수강 후기
    트랜잭션
    [Numpy] squeeze & unsqueeze
    그리디 알고리즘
    Python
    Ubuntu-20.04 APM 소스 설치
    umc
    더티 읽기
    다중 버전 동시성 제어
    더티 쓰기
    reranker
    transaction
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
성 언
[DataFrame] Pandas DataFrame 다루기 - iloc & loc, 값 변경
상단으로

티스토리툴바