데이터분석 167

결측치 제거를 위한 몇가지 팁

데이터에서 NA값이 있으면 아주 몹쓴 결과치이다. 데이터에 결측치가 있는지 확인> table(teens$gender, useNA = "ifany") 아예 결측치로 바꿔버릴수도있다.> teens$age = 13 & teens$age mean(teens$age) [1] NA > mean(teens$age, na.rm = TRUE) [1] 17.25243 데이터의 부분그룹에 대한 통계를 얻을때는?> aggregate(data = teens, age ~ gradyear, mean, na.rm = TRUE) gradyear age 1 2006 18.65586 2 2007 17.70617 3 2008 16.76770 4 2009 15.819..

비계층적 군집화과 k평균

덴드로그램으로 사용하던 계층적 군집방법 말고, 비계층적 군집방법은 다음과 같다. k-means clustering Expectation-Maximization Density-based clustering Fuzzy clustering 이 중, 제일 유명한것은 k-means clustering. 일단 분석대상인 데이터가 뭉텅이로 있다고 치자. 데이터의 양상을 좀 보려면 크게크게 나눠서 패턴이 어떻게 되는지 보는게 좋아보인다. 다만 비지도 학습이기 때문에 데이터에 대한 어느정도 합리적인 추측이 필요한데, 몇개의 군집으로 나누면 좋을것인지에 대한 판단은 들어가야되기 때문. 즉, 군집이 몇개 나눠져야 하는지를 사전에 정해야 하는데, 나누고 싶은 계층이 부자 / 중산층 / 서민 과같이 대략적으로 목적이 있으면 그..

나이브 베이즈 이해하기.

나이브. Naive. 인터넷에서 가끔씩 날카롭다고 달리는 리플중에는 ' 참 나이브 하군요 ' 라는 문구를 종종 본다. 결국 순진하다는 말과 1:1로 동치되는 단어임에도 불구하고 왜이리 자주 쓰이는지는 나이브 라는 영단어가 주는 시크함과 화자가 나타내고 싶은 우위를 잘 나타내주는 단어임에 다름이 없기 때문일것이다. 그러니, 단어가 주는 시크함에 속지말자. 나이브 베이즈는 수학자 Bayes라는 사람으로 부터 유래된것으로, 그냥 고등학교 (혹은 중학교?) 때 배운 조건부 확률을 이용할때 (Bayes기법) 조건이 여러개 있으면 정확히 계산하기에 너무 시간이 기하급수적으로 늘기때문에 몇가지 가정을 포기하고 대충 계산(Naive)하는 방법을 말한다. 나이브 베이즈는 스팸분류기로 보통은 설명을 하는듯보이니 한번 따라..

%in% 연산자..

사실, 어떻게 쓰는지 정확히 아는것은 중요하지 않다. 왜냐면, 문법이나 그런것들은 어차피 찾아보게 되니까..중요한건 기능이 있다는것을 아는것.. 그리고 어떠한 기능이 있는걸 잠깐 지나치고 보면, 모든걸 까먹는다. 시간이 10배가 들어도 이해를 제대로 하고 넘어가는게 중요한것.. R에서는%in% 이란게 신기한게 있다.실제, 어떤 데이터가 들어있는지 확인할수 있는것> usedcars$conservative

R - 다차원척도법 (MDS)

MDS - Multi Dimension Scale다차원척도법이란, 변수가 두개 이상인 경우의 다변량해석중 하나로써 대상들 사이의 관계를 저차원 공간에 점으로 표현한다.당연하게도 유사한건 가깝게 표현하고, 다른건 멀리 배치한다.예를들어 비슷하게 생긴 놈들은 가깝게 이차원 그래프에 점으로 표현하고 다른게 새긴놈은 멀리 보이게 될것이다.> result dist()함수를 써서 나온 결과를isoMDS()함수에 다시 넣으면 된다.

R 독립2표본평균검정, 대응표본평균검정, 이표본분산, 일표본비율, 이표본비율, 상관계수검정, 독립성 검정

독립2표본평균검정완전 다른 집단에대해 (남자나 여자) 평균차이가 있는지 검증하는 방법은독립 표본 평균검정 (독립되어있으므로)> t.test(extra~group, data=sleep, paired=F, var.equal=T)이러한 식으로 비교를 한다. 즉, paired를 False로 두면, 아예 다른 독립된 표본을 검정한다는 뜻. 대응표본평균검정이와 반대로, paired=T로 두면, 동일한 집단간에 나온 두 결과 (기말고사와 중간고사처럼) 를 비교하면 된다.> t.test(extra~group, data=sleep, paried=T, var.equal=T) 결과적으로 P-value 가 0.05미만으로 떨어지면, 차이가 있다고 봐도 무방하다는 뜻으로 알아듣는다. 이표본분산> var.test(iris$Sep..

각 머신러닝 알고리즘의 장단점.

발췌 - R을 활용한 기계학습, 브레트 란츠-전철욱 옮김 kNN단순하며 효율적, 분산추정 노노, 빠른훈련모델생성하지 않아 통찰력 노노, 메모리, 명목형 속성과 결측데이터 추가적 처리 필요 나이브 베이즈단순혀과적, 노이즈결측치 오케이, 수량에민감노속성독립가정, 결함가정에 의존, 수치속성많은데이터셋 노노, 덜 신뢰적 트리모든문제에 적합, 결측명목수치처리 가능학습, 가장 중요한 속성만, 수량상관없음, 효율높음다수의 레벨을 가진 속성쪽으로 구분하는 경향, 쉽게 과적합, 훈련데이터약간의변경 결과에 영향, 큰트리는 이해하기 어려움 회귀수치데이터모델 일반적인 접근, 거의모든데이터모델화, 속성과 결과간 견고성과 크기 추정데이터에 대한 강한 가정, 모델의 형태 명시, 결측치노, 범주형데이터 부가처리 신경망분류나 수치, ..