Home Pandas Dataframe 생성 및 이용
Post
Cancel

Pandas Dataframe 생성 및 이용

Pandas Dataframe 생성 및 이용

데이터프레임 생성

데이터프레임을 추가할 시에는 Dict형태로 Key에는 행의 이름을 입력 Value에 각 행별 데이터를 열순번으로 넣어야 한다.

1
2
3
4
5
6
7
8
import pandas as pd

data_a = ['1','2','3','4'] # a라는 행의 데이터 열순번별 리스트
data_b = ['5','6','7','8'] # b라는 행의 데이터 열순번별 리스트

df = pd.DataFrame({'a': data_a, 'b': data_b})

 ab
015
126
237
348

데이터프레임의 행 라벨 변경

기본 데이터프레임

 ab
015
126
237
348
1
2
3
df.rename(columns={'a':'renamed_a', 'b': 'renamed_b' })

 renamed_arenamed_b
015
126
237
348

데이터프레임 접근

기본 데이터프레임

 ab
015
126
237
348

행의 라벨을 추출하는 법

1
2
3
4
5
df.columns

list(df.columns)

Index([‘a’, ‘b’], dtype=’object’)

[‘a’, ‘b’]

임의로 행순서를 바꾸는 방법

1
2
3
df = df[['b','a']] # 해당 행의 리스트로 불러오기 때문에 원하는 행을 제외시킬 수도 있음

 ba
051
162
273
384

특정 열 혹은 행 선택

1
2
3
4
5
df.loc[0] # 특정 행 선택

df.iloc[0]

 ab
015
1
2
3
df["a"] # 특정 열 선택

  
01
12
23
34
1
2
3
df["a"][0] # 특정 행 안의 특정 열 선택

1

인덱스 설정 (기본 인덱스는 0번부터 순서대로 자동 생성됨)

1
2
3
df.set_index("b")

ba
51
62
73
84

데이터프레임 추가 / 수정 / 삭제

기본 데이터프레임

 ab
015
126
237
348

데이터프레임 행 추가

index값을 새로 추가하여 데이터프레임에 추가

1
2
3
df.loc[4] = ['9','10'] # 중복되지 않는 index로 추가하고 싶을때(중복될 시 해당되는 모든 Index에 중첩되어 수정됩니다.)

 ab
015
126
237
348
4910

새로운 데이터프레임을 생성해 데이터프레임 안에 추가

1
2
3
4
5
new_data = pd.DataFrame({'a': ['11'], 'b': ['12']}) # Index순서를 무시하고 새로운 데이터프레임을 생성하고 추가시킬 때

df.append(new_data)

 ab
015
126
237
348
01112

데이터프레임 검색 및 필터

기본 데이터프레임

 ab
015
126
237
348
449

데이터프레임 열의 값을 통한 행의 필터

1
2
3
4
5
df[
  df['a'] == '4' # a의 값이 4일 경우의 모든 행을 찾기
]

 ab
348
449

-

Python전용 테스트 라이브러리 Pytest