대량 데이터를 분석하는 동안 행과 열을 추가하거나 일부 행과 열을 삭제할 수 있습니다.오늘은 파이썬(python)에서 데이터 박스를 업데이트하는 방법을 알려드리겠습니다
참고: 이 텍스트에서 사용하는 데이터 상자 date_frame:
ID name gende age height
10000001 윤일범 남자 17 1.78
10000002 윤니나 여자 18 1.68
10000003 저우잉후이 여자 20 1.62
10000004 윤자항 여자 19 1.73
10000005 윤택곤 남자 18 175 10000006 이가민 여자 16 160
10000007 자두저우 남자 17 1.82
10000008 리자하오 남자 18 180
1 데이터 상자 끝에 줄 추가
원본 데이터 상자에 행을 추가하려면 먼저 행에 해당하는 사전을 정의할 수 있으며 구체적인 문구는 다음과 같습니다
new_row = {'ID':['1000009'],
'name': ['당시시'],
'gender': ['여자''],
'age':[21],
'height':[1.68]
}
참고: 형식은 원본 데이터 상자와 일치해야 합니다.새로 추가된 행을 append 함수로 원본 데이터 상자에 추가합니다. 구체적인 문구는 다음과 같습니다
new_row1 = pd.DataFrame(new_row)
date_frame.append(new_row1)
얻어진 결과는 다음과 같다.
ID name gende age height
0 10000001 윤일범 남자 17 1.78
1 10000002 윤니나 여자 18 1.68
2 10000003 저우잉후이 여자 20 1.62
3 10000004 윤자항 여자 19 1.73
4 10000005 윤택곤 남자 18 175
5 10000006 이가민 여자 16 160
6 10000007 자두저우 남자 17 1.82
7 10000008 리자하오 남자 18 180
0 10000009 당시시 여자 21 1.68
2 데이터 상자에 열 삽입하기
데이터 상자에 행을 추가할 수 있으므로 데이터 상자에 열을 추가할 수도 있습니다.insert 함수로 데이터 상자의 임의의 위치에 열을 추가할 수 있습니다.예를 들어 데이터 상자의 첫 번째 열에 새로운 열을 삽입하고 싶다면 python에서 다음과 같은 문장을 실행할 수 있습니다
date_frame.insert(0, 'calss', ['class1','class1','class1','class1','class2','class2','class2','class2','class2'])
얻어진 결과는 다음과 같다
caiss ID name gende age height
0 caiss1 10000001 윤일범 남자 17 1.78
1 caiss1 10000002 윤니나 여자 18 1.68
2 caiss1 10000003 저우잉후이 여자 20 1.62
3 caiss1 10000004 윤자항 여자 19 1.73
4 caiss2 10000005 윤택곤 남자 18 175
5 aiss2 10000006 이가민 여자 16 160
6 caiss2 10000007 자두저우 남자 17 1.82
7 caiss2 10000008 리자하오 남자 18 180
0 caiss2 10000009 당시시 여자 21 1.68
이 중.insert의 0은 새로 삽입된 열의 위치를 나타내고, 'calss'는 새로 추가된 열의 이름을 나타내고, ['class1', ..., 'class2']는 새로 추가된 열의 내용을 나타내며, 새로 추가된 열은 원래 데이터 상자의 길이와 일치해야 합니다.데이터 상자에 행과 열을 추가할 수 있으므로 데이터 상자에서 행과 열을 삭제할 수도 있습니다.먼저 데이터 상자에서 행을 삭제해 보겠습니다.
3 데이터 상자의 행 삭제
drop 함수로 한 행을 삭제할 수도 있고 여러 행을 삭제할 수도 있습니다.먼저 첫 번째 줄을 삭제하는 구체적인 코드를 살펴보겠습니다.
date_frame.drop([0])
얻어진 결과는 다음과 같다
caiss ID name gende age height
1 caiss1 10000002 윤니나 여자 18 1.68
2 caiss1 10000003 저우잉후이 여자 20 1.62
3 caiss1 10000004 윤자항 여자 19 1.73
4 caiss2 10000005 윤택곤 남자 18 175
5 aiss2 10000006 이가민 여자 16 160
6 caiss2 10000007 자두저우 남자 17 1.82
7 caiss2 10000008 리자하오 남자 18 180
.drop([0])은 인덱스 번호가 0(첫 번째 줄)인 행을 삭제함을 나타냅니다.다른 행을 삭제하려면 0을 해당 행의 인덱스 번호로 변경할 수 있습니다.다음으로 첫 번째 줄과 다섯 번째 줄을 삭제하는 구체적인 코드를 살펴보겠습니다
date_frame.drop([0,4])
얻어진 결과는 다음과 같다
caiss ID name gende age height
1 caiss1 10000002 윤니나 여자 18 1.68
2 caiss1 10000003 저우잉후이 여자 20 1.62
3 caiss1 10000004 윤자항 여자 19 1.73
5 aiss2 10000006 이가민 여자 16 160
6 caiss2 10000007 자두저우 남자 17 1.82
7 caiss2 10000008 리자하오 남자 18 180
drop([0,4])는 인덱스 번호가 0과 4인 행을 삭제함을 나타내며 실제로 첫 번째 및 다섯 번째 행을 나타냅니다.더 많은 행을 삭제해야 하며, 두 행을 삭제하는 코드를 참조할 수 있습니다.
4 데이터 상자의 열 삭제
마찬가지로 drop 함수로 열을 삭제할 수 있습니다.먼저 name 열을 삭제하는 구체적인 코드를 살펴봅니다
date_frame.drop(columns = 'name')
date_frame.drop('name', axis = 1) #axis = 1은 열에 대한 작업을 나타냅니다.
얻어진 결과는 다음과 같다
caiss ID gende age height
0 caiss1 10000001 남자 17 1.78
1 caiss1 10000002 여자 18 1.68
2 caiss1 10000003 여자 20 1.62
3 caiss1 10000004 여자 19 1.73
4 caiss2 10000005 남자 18 175
5 aiss2 10000006 여자 16 160
6 caiss2 10000007 남자 17 1.82
7 caiss2 10000008 남자 18 180
0 caiss2 10000009 여자 21 1.68
name 열과 gender 열을 삭제하려면 다음과 같은 코드를 입력하면 됩니다
date_frame.drop(columns = ['name','gender'])
date_frame.drop(['name','gender'], axis = 1)
얻어진 결과는 다음과 같다
caiss ID age height
0 caiss1 10000001 17 1.78
1 caiss1 10000002 18 1.68
2 caiss1 10000003 20 1.62
3 caiss1 10000004 19 1.73
4 caiss2 10000005 18 175
5 aiss2 10000006 16 160
6 caiss2 10000007 17 1.82
7 caiss2 10000008 18 180
0 caiss2 10000009 21 1.68
여러 열의 코드를 삭제하면 마찬가지로 두 열의 코드 삭제를 참조할 수 있습니다.
5 조건을 충족하는 행을 삭제합니다
18세 이상의 모든 기록을 삭제한다고 가정하면 파이썬에 다음과 같이 입력할 수 있습니다
date_frame.drop(index = (date_frame.loc[(date_frame.age>18)].index))
얻어진 결과는 다음과 같다
caiss ID name gende age height
1 caiss1 10000002 윤니나 여자 18 1.68
4 caiss2 10000005 윤택곤 남자 18 175
5 aiss2 10000006 이가민 여자 16 160
6 caiss2 10000007 자두저우 남자 17 1.82
7 caiss2 10000008 리자하오 남자 18 180
이 중 .loc[(date_frame.age>18)].index는 18세 이상의 인덱스를 나타냅니다.이로써 파이썬에서 데이터 박스를 변경하는 작업이 소개되었으니, 여러분은 데이터 박스를 다른 방식으로 조작할 수 있는지 아닌지를 연습할 수 있습니다
'개발 꿀팁 > PYTHON' 카테고리의 다른 글
로지스틱 회귀 3부작 - 로지스틱 회귀(logistics regression) 원리 - 로지스틱 회귀를 완전히 읽을 수 있게 해준다 (0) | 2022.11.23 |
---|---|
Python 하늘에 가득한 눈송이를 그리다 (0) | 2022.11.23 |
파이썬 데이터 분석-애플리케이션 함수 (0) | 2022.11.23 |
파이썬 데이터 분석 - 데이터 정렬 (0) | 2022.11.23 |
파이썬으로 미키마우스 그리기 (2) | 2022.11.22 |