본문 바로가기
Python Library/Pandas

[Pandas] 데이터 전처리 (3)

by goatlab 2022. 7. 24.
728x90
반응형
SMALL

df.drop() : 행과 열 삭제

 

import pandas as pd

data_dict = { 'Name' : ['John', 'Sabre', 'Kim', 'Sato', 'Lee', 'Smith', 'David'],
              'Country' : ['USA', 'France', 'Korea', 'Japan', 'Korea', 'USA', 'USA'],
              'Age' : [31, 33, 28, 40, 36, 55, 48],
              'Job' : ['Student', 'Lawyer', 'Developer', 'Chef', 'Professor', 'CEO', 'Banker']    
}

df = pd.DataFrame(data_dict)

df = df.drop(1, axis=0)
df

df = df.drop([3, 5], axis = 0)
df

df = df.reset_index()
df

df = df.drop('Age', axis = 1)
df

df = df.drop(['Name', 'Job'], axis = 1)
df

 

df.append() : 행과 열 추가

 

new_data = { 'Name' : 'Lee',
             'Country' : 'Korea',
             'Age' : 36,
             'Job' : 'Chef'}

df = df.append(new_data, ignore_index = True)
df

df['New_Col1'] = df['Age'] / 2.0
df

add_val_1 = df['Age'].values
add_val_2 = df['New_Col1'].values

df = df.assign(ADD_1 = add_val_1, ADD_2 = add_val_2)
df

 

pd.concat() : 데이터프레임 합치기

 

data1 = { 'Name' : ['John', 'Sabre'],
             'Country' : ['USA', 'France'],
             'Age' : [31, 33],
             'Job' : ['Student', 'Lawyer']}

df1 = pd.DataFrame(data1)
df1

data2 = { 'Name' : ['Lee', 'Smith'],
             'Country' : ['Korea', 'USA'],
             'Age' : [36, 35],
             'Job' : ['Professor', 'CEO']}

df2 = pd.DataFrame(data2)
df2

df3 = pd.concat([df1, df2], axis = 0)
df3

df4 = pd.concat([df1, df2], axis = 0, ignore_index = True)
df4

data3 = { 'Salary' : 1000,
          'Hobby' : ['Run']}

df5 = pd.DataFrame(data3)
df5

df6 = pd.concat([df1, df5], axis = 1)
df6

 

열 순서 변경

 

column_name = ['Age', 'Job', 'Country', 'Name']

df1 = df[column_name]
df1

 

특정 열 제외

 

df2 = df[df.columns.difference(['Age', 'Job'])]
df2

728x90
반응형
LIST

'Python Library > Pandas' 카테고리의 다른 글

[Pandas] DataFrame Option  (0) 2022.08.11
[Pandas] pandas.read_csv  (0) 2022.08.11
[Pandas] 데이터 전처리 (2)  (0) 2022.07.24
[Pandas] 데이터 전처리 (1)  (0) 2022.07.23
[Pandas] 피클 불러오기  (0) 2022.06.03