DataFrame의 칼럼 데이터 세트 생성과 수정
DataFrame에 새로운 칼럼을 추가하는 방법은 파이썬 딕셔너리와 유사합니다. 다음과 같은 형태로 추가해주시면 됩니다:
DataFrameName\['COL_NAME'] = Val
밑의 코드를 통해 한번 확인해봅시다!
data = { '학번' : ['1000', '1001', '1002', '1003', '1004', '1005'],
'이름' : [ 'Steve', 'James', 'Doyeon', 'Jane', 'Pilwoong', 'Tony'],
'점수': [90.72, 78.09, 98.43, 64.19, 81.30, 99.14]}
df = pd.DataFrame(data)
# Dataframe에 새로운 칼럼 추가하기: 일괄적으로 0
df['키'] = 0
df['점수*10'] = df['점수']*10
print(df)
[OUTPUT]
> `학번 이름 점수 키 점수*10
0 1000 Steve 90.72 0 907.2
1 1001 James 78.09 0 780.9
2 1002 Doyeon 98.43 0 984.3
3 1003 Jane 64.19 0 641.9
4 1004 Pilwoong 81.30 0 813.0
5 1005 Tony 99.14 0 991.4
마찬가지로, 기존 칼럼의 값도 일괄적으로 변형할 수 있습니다.
# Dataframe 칼럼값 수정: 일괄적으로 1
df['키'] = 1
print(df)
DataFrame 데이터 삭제
DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False)
DataFrame에서 데이터의 삭제는 drop() 메서드는 사용합니다. 주의해서 보아야 할 파라미터는 labels, axis, inplace입니다.
DataFrame은 행(row) 방향인 axis 0, 열(column) 방향인 axis 1로 구성되어 있습니다. 따라서, drop() 메서드에 axis를 1로 설정하면 열 방향으로 데이터를 드랍하라는 의미입니다. labels에 버리고 싶은 칼럼의 이름을 쓰고, 축을 설정하면 됩니다.
다음은 예시 코드입니다:
# 우선 필요없는 칼럼을 추가해본다
data['AGE_0'] = 0
data['AGE_1'] = 1
# 그리고 없애버린다!
data.drop('AGE_0', axis=1)
그런데, 다시 data
를 호출해보면 삭제했다고 생각한 'AGE_0'
칼럼이 여전히 남아있는 것을 확인할 수 있습니다.
이는 drop() 메서드의 inplace 인자의 기본값이 다음과 같기 때문이죠: inplace=False
inplace가 False값으로 되어있으면 자기 자신의 DataFrame 데이터는 삭제하지 않으며 삭제된 결과 DataFrame을 반환한다.
따라서, DataFrame 자체를 수정하고 싶다면 inplace=True
로 설정해야 합니다.
DataFrame을 수정하는데 있어 또 다른 팁은 리스트의 형태로 삭제하고 싶은 칼럼들을 한 번에 넘겨줄 수 있다는 것입니다. inplace + list를 예시 코드로 보면 다음과 같습니다:
data.drop(['AGE_0', 'AGE_1'], axis=1, inplace=True)
ROW 방향도 똑같은 방식으로 삭제할 수 있습니다.
'Data handling > Pandas' 카테고리의 다른 글
[Pandas] 외부 데이터 읽기: csv, txt, json (0) | 2020.06.11 |
---|---|
[Pandas] Series, DataFrame의 이해와 생성 (0) | 2020.06.10 |