파이썬을 활용한 데이터 전처리 1

2024. 12. 18. 15:49data 공부/데이터전처리

Numpy 의 데이터 구조

1) 인덱싱, 슬라이싱 

1.1 2차원 배열의 경우에는 x2= np,.random.random(size = (10,5)) #10행짜리5열의 2차원 배열을 만들어라

[column, row] 의 형태 
print(x2[0,1]) #0행1렬값 중 하나를 난수로 받음 
print(x2[1:4,2 ]) #행은첫번째부터 4번째까지, 열만 2번째 값
print(x2[0,2:4]) #열은 0번째. 열은 2번째~4번째 값

 

1.2 리스트와 유니버셜 함수의 차이 => 효율성

#리스트사용해서벡터 덧셈 구현

import time
output = []
for val1, val2 in zip(arr_1, arr_2):
	output.append(val1+val2)
t2 = time.time()
print(round(t2-52, 4)

#유니버셜 함수 사용 경우
t1= time.time()
output = arr_1+arr_2
t2 = time+time()
print(round(t2 - t1, 4)

 

반복문은 45초, 유니버셜 함수의 사용으로는 6.46초 나옴

 

pandas 모듈에는 series 와 dataframe이 사용됨

- series는 ndarray에 인덱스가 부여된 형태의 데이터

- series 에도 유니버셜 함수와 브로트캐스팅 등이 적용됨 

- Dataframe에는 2차원 배열 자료형으로 값, 행 인덱스,열인덱스로 구성 (하나이상의 series로 구성된 자료형) 

 

인덱싱과 슬라이싱

loc는 명시적인 인덱스를참조. iloc는 암묵적인 인덱스를 참조 

암묵적 명시적 data
0 a 1
1 b 2
2 c 3
3 d 4

S.loc['a'] = 1, S.iloc[2] = 3 

 

'data 공부 > 데이터전처리' 카테고리의 다른 글

엑셀 대시보드 만들기  (0) 2024.12.23
KNN (K-Nearest Neighbors) 알고리즘  (0) 2024.12.20
Logistic Regression  (1) 2024.12.19
리니어 리그레션 및 예측  (1) 2024.12.19
data 다루기  (0) 2024.12.18