Q. 

plot차트는 만들었는데, 회귀직선을 어떻게 추가할까요?





A.

abline()을 활용합니다.



m <- lm(distress_ct ~ temperature, launch)


회귀 결과를 변수에 담고



abline(m)


그냥 abline 함수 안에  넣어주면 끝!


색상을 추가하고 싶다면,


abline(m, col = "red") 이런식으로 col 파라미터에 원하는 색상값을 넣어주면됩니다.










반응형
Posted by JoeSung
,


Q.  

data.frame 의 column 갯수를 가져오려면 어떻게 해야할까


A.

dim 을 사용하여 2번째 밸류값을 반환하면 된다.

dim 은 row의 갯수와 column의 갯수를 반환



>dim(table2)

[1] 5342   23


> dim(table2)[1]

[1] 5342


> dim(table2)[2]

[1] 23






반응형
Posted by JoeSung
,

Q. 파이차트에서 labels 의 크기를 조정하는 방법


A.

cex의 크기를 조절하면 된다.

기본 설정은 1로 되어있다.



pie(c(3632,20,491,991,120), cex=1)




pie(c(3632,20,491,991,120), cex=5)





https://stackoverflow.com/questions/37069311/how-to-increase-the-font-size-of-labels-on-pie-chart

반응형
Posted by JoeSung
,

Vector와 미묘하게 용도가 다르다 싶어서 한번 정리를 해야겠다고 마음먹던 차에..
Factor 자료형에 관해서 발표할 일이 있어서 주말간 정리해본 자료를 공유합니다.

Factor는 linear modeling을 위해 특별히 고안된 자료형인데, Levels 덕분에 분석작업시에
명목변수별로 데이터를 볼 수 있다는 장점이 있습니다. 아래의 자료를 참고해주세요 :D



[다운로드]


Factor.pdf


*대단한 자료는 아니지만, 가져가실 때 출처 밝혀주시는 센스! 부탁드립니다.




[코드]


factor(c("no", "yes") )


factor(c("yes", "no", "yes"), levels = c("yes", "no"))


factor(c("yes", "no", "yes"), levels = c("yes", "no") , ordered = T)


x <- factor(c("yes", "no", "yes", "yeah"), levels = c("yes", "no", "yeah"), ordered = T , nmax = 2)

x


?factor


x <- factor(c("yes", "no", "yes", "yeah"), levels = c("yes", "no", "yeah") , ordered = T, exclude =  "yeah")

x


levels(x)[1:2] <- "yes"

levels(x)



addNA(x, ifany = FALSE)


?addNA


d <- c(rep(1,5), rep(2,6), rep(3,8), rep(4,6))

d









hsb2 <- read.csv("https://stats.idre.ucla.edu/stat/data/hsb2.csv")


## race 컬럼에 factor 미적용시

summary(lm(write ~ race, data = hsb2))


# 팩터 변수 생성 후 race 컬럼에 적용한 결과

hsb2$race.f <- factor(hsb2$race)

is.factor(hsb2$race.f)

hsb2$race.f[1:15]

summary(lm(write ~ race.f, data = hsb2))


## 팩터변수를 외부에서 생성하기 싫은 경우 내부에 사용도 가능

hsb2 <- read.csv("https://stats.idre.ucla.edu/stat/data/hsb2.csv")

summary(lm(write ~ factor(race), data = hsb2))



## 확인시켜주는 함수, is. 시리즈

is.factor(x)

is.ordered(x) 


## 아예 변환시켜주는, as. 시리즈

as.factor(x)

as.ordered(x)


## levels만 뽑아보고 싶어 levels(), levels 가 몇개야? nlevels()

levels(x)

nlevels(x)


## 이 팩터변수 정보좀 가져와~ table(), 팩터형 좀 해제 시켜봐, unclass()

table(x)

unclass(x)



 

[참고 서적]


1. R을 활용한 머신러닝 - 브레트 란츠

2. R Programming - Coursera (2017년 강의)


반응형
Posted by JoeSung
,


[결과물]


1


2




[코드]



## 1 igraph 패키지 사용

install.packages("igraph")

library(igraph)


emp <- read.csv("emp.csv")

a <- merge(emp, emp, by.x="mgr", by.y="empno")[ , c("ename.x", "ename.y")]

a

b <- graph.data.frame(a, directed = T)

plot(b)



## 2 - googleVis 패키지 사용


install.packages("googleVis")
library(googleVis)


a <- merge(emp,emp, by.x="empno",by.y="mgr", all.y=T)


org <- gvisOrgChart(a, idvar="ename.y",parentvar="ename.x",
     options=list(width=600, height=250, size='middle',allowCollapse=T))


plot(org)


반응형
Posted by JoeSung
,

> barplot(x)

Error in plot.new() : figure margins too large


문제 :

margin 기본 설정이 너무 좁게 설정 되어 있음


해결 :

아래 코드로 마진을 다시 설정 후 결과 확인


par("mar")

par(mar=c(1,1,1,1))


혹은

윈도우창을 최대로 늘린 뒤 결과 다시 확인




## Stack Over flow 참조

https://stackoverflow.com/questions/23050928/error-in-plot-new-figure-margins-too-large-scatter-plot

반응형
Posted by JoeSung
,



원인

-R의 bit(32, 64)와 java의 bit가 다르기 때문에 rJava 오류가 발생합니다.


해결 :


1.

R의 bit를 확인합니다. 보통 R 콘솔(R studio가 아닌)을 실행했을 때 맨 첫 화면에 나타납니다.



[이런식으로, 맨 첫화면에 Platform 부분에 bit 버전이 뜹니다. 요 체크]


2.

JAVA 페이지에 접속해서 해당 Bit에 맞는 파일로 다시 다운받아 설치합니다.

이 때, '설치 경로'를 캡쳐해두거나 복사하여 적어둡니다.


https://www.java.com/en/download/manual.jsp

JAVA 다운로드는 이곳에서 가능



3.

r_studio 환경에서 아래와 같은 명령어를 수행합니다.

다만 JAVA HOME에 들어갈 경로에 아까 확인한 설치경로에 맞게 다시 작성해 줍니다.


Sys.setenv(JAVA_HOME='C:\\Program Files\\Java\\jre1.8.0_151')



4.

rJava 에러가 해결되는지 확인




##참고 

http://egloos.zum.com/greentec/v/4176464






반응형
Posted by JoeSung
,





## rvest를 통한 웹 스크래핑


install.packages("xml2")

library("xml2")

library("rvest")


url_tvcast = "http://tvcast.naver.com/jtbc.youth"

html_tvcast = read_html(url_tvcast, encoding = "UTF-8")


html_tvcast %>% html_nodes(".title a")

html_tvcast %>% html_nodes(".title a") %>% html_text()

tvcast_df = html_tvcast %>% html_nodes(".title a") %>% html_text() %>%

data.frame()


반응형
Posted by JoeSung
,



[결과물]




[코드]

> install.packages("shiny") ## 패키지 설치

library(shiny)

runExample()

Valid examples are "01_hello", "02_text", "03_reactivity", "04_mpg", "05_sliders", "06_tabsets", "07_widgets", "08_html", "09_upload", "10_download", "11_timer"

runExample("01_hello") ## 위의 가능한 




[레퍼런스]

http://1004jonghee.tistory.com/entry/%EC%83%A4%EC%9D%B4%EB%8B%88Shiny-%ED%8C%A8%ED%82%A4%EC%A7%80

반응형
Posted by JoeSung
,




[코드]


Sys.setlocale("LC_ALL","ko_KR.UTF-8")



-맥의 경우 UTF-8로 설정을 해도 한글이 종종 깨집니다.

-이유는 mac이 locale 설정이 기본적으로 안되어 있는 경우가 종종 있어서 그렇습니다.

-이런 경우 위의 코드로 locale설정을 바꾸어주면 R studio에서 깨지는 일이 사라집니다.

반응형
Posted by JoeSung
,