R 언어 | 데이터 규범화, 귀일화

1153 단어
필자는 규범화는 주로 데이터가 단위의 영향을 많이 받아 양강화를 해야 하기 때문이라고 말했다.대체로 최소-최대규범화, 균일치 표준화, 소수정표 규범화
1. 최소-최대 규범화
이차 표준화라고도 하는데 원시 데이터에 대한 선형 변환으로 데이터를 [0,1] 사이에 비추어 효능 계수법과 같다.
# - 
b1=(data[,1]-min(data[,1]))/(max(data[,1])-min(data[,1]))
b2=(data[,2]-min(data[,2]))/(max(data[,2])-min(data[,2]))
b3=(data[,3]-min(data[,3]))/(max(data[,3])-min(data[,3]))
b4=(data[,4]-min(data[,4]))/(max(data[,4])-min(data[,4]))
data_scatter=cbind(b1,b2,b3,b4)

2. 균일치 표준화법
표준차 표준화, 제로 균일치 규범화 등 방법은 처리된 데이터의 균일치는 0이고 표준차는 1이다.공식은 다음과 같습니다.
x*=(x-균일치)/표준차
균일치는 이군치의 영향이 비교적 크기 때문에 균일치를 변수의 중위수로 바꿀 수도 있다.
# - 
data_zscore=scale(data)

3. 소수정표 규범화
변수의 소수점 위치를 이동하여 변수를 [-1,1]에 비추다
# 
i1=ceiling(log(max(abs(data[,1])),10))# 
c1=data[,1]/10^i1
i2=ceiling(log(max(abs(data[,2])),10))
c2=data[,2]/10^i2
i3=ceiling(log(max(abs(data[,3])),10))
c3=data[,3]/10^i3
i4=ceiling(log(max(abs(data[,4])),10))
c4=data[,4]/10^i4
data_dot=cbind(c1,c2,c3,c4)

# 
options(digits = 4)# 
data_dot

코드에서log(x,10)는 ln(x)과 같다.
options는 네 자릿수 소수점 보존을 제어할 수 있습니다

좋은 웹페이지 즐겨찾기