R기초문법 중
%/% - 정수 나누기
%% - 나머지 구하기
숫자를 쓸 때 0이 4개까지는 그대로 나오지만
100000
0이 5개부터는 e로 표시됨.
예)
1000000 ->1e+05
1e2 <-100
1e3 <-100
3e1 <-30
Sys.Date() <- 날짜만 보여주는 함수
Sys.time() <- 날짜와 시간까지 다 보여줌.
시간을 쓸 때는 홑따옴표나 겹따옴표를 사용해야 함.
날짜형태를 지정하려면 as.Date("13-04-2022", format="%d-%m-%Y") 로 지정.
%b <-월을 영어 약어로 인식함.
%B <- 월을 전체 이름으로 인식함.
"2022-04-11" 이 형태는 날짜처럼 보이지만 문자이므로 as.Date()를 사용하여 날짜로 변경해야함.
as.Date(간격, 기준날짜)
기준 일자를 주고 몇 일후 찾는 방법
예) as.Date(10, origin="2022-04-13") <---주어진 날짜 기준으로 10일 후의 날짜
[1] "2022-04-23"
as.Date("2022-04-11")-as.Date("2022-09-24") -----> 이런식으로 날짜 계산도 할 수 있음.
POSIXlt는 날짜를 년, 월, 일로 표시하는 리스트형이고
POSIXct는 날짜를 연속적인 데이터로 인식해서 1970년을 기준으로 초 단위로 계산함.
보통 R고급과정에서 회귀분석 등을 할 때 주로 POSIXct를 많이 사용함.
예)as.POSIXct("2022-04-13 20:00:00") - as.POSIXct("2022-04-13 18:30:30")
Time difference of 1.491667 hours
lubridate패키지로 날씨와 시간을 제어할 수 있음.
library(lubridate)
date <- now() # 현재 날짜와 시간 넣기
date
year(date)
month(date,label = T) #월을 출력하되 영문 이름으로 출력하기, label = F이면 숫자로 출력됨.
var1 <-c(1 2 3)
var2 <-c(3 4 5)
var1 - var2
[1] -2 -2 -2
setdiff(var1,var2) <-- var1 에 있는데 var2 에 없는 요소 출력하기
[1] 1 2
setdiff(var2,var1) <-- var2 에 있는데 var1 에 없는 요소 출력하기
[1] 4 5
intersect(var1,var2) <-- var1 과 var2 에 공통적으로 있는 요소 찾기
[1] 3
벡터의 각 컬럼에 이름 지정하기
names()를 사용하여 이름을 지정함.
예)
fruits<-c(10,20,30)
names(fruits)<-c('apple', 'banana', 'peach')
apple banana peach
10 20 30
벡터에 연속적인 데이터 할당하기 - seq( ) , rep( )
var7 <- seq(1,10,2) ## 2 씩 증가시키면서 값을 할당합니다
[1] 1 3 5 7 9
var8 <- rep(1:3,2)
var8
[1] 1 2 3 1 2 3
벡터의 길이를 찾기 위한 함수는 length(), NROW()함수를 사용할 수 있음.
as.numeric()은 문자를 강제로 숫자형으로 변환시켜주는 함수.
class() : 유형검사해주는 함수 + str(), mode(), typeof()...
NA : 잘못된 값이 들어온 경우, 알수없는 값, 계산이 불가능 오류가 남.
NULL : 변수명만 존재. 아무것도 없는 상태, 계산이 가능
na.rm=T를 쓰면 NA 값을 제거할 수 있음.
as.으로 시작하는 함수는 보통 변환하는 함수임.
append(추가시키고싶은 변수, 추가할 값, after=ㅁ<-이 위치 뒤에 넣을 수 있음)
vec2<-c(1,2,3,4,5)
예)append(vec2,10,after=3) <-- 3번째 위치 뒤에 10을 넣었습니다.
%in% 벡터에 특정문자의 포함 여부 찾을 수 있음
예)
3 %in% var7 ## var7 에서 3 이 있는지 검색함
[1] TRUE
matrix의 이름 지정함수는 colnames()로 컬럼 이름을 지정할 수 있음.
새로운 행과 열을 추가하려면 rbind(), cbind()를 사용함.
mat4 <- matrix(c(1,2,3,4,5,6,7,8,9),nrow=3,byrow=T)
mat4 <- rbind(mat4,c(11,12,13)) <-- 마지막 행이 추가가 됨.
cbind(기존데이터프레임, 추가할꺼)
colnames()<-c()
##컬럼 이름 지정할 수 있음
list의 특정 key값만 조회하려면 $를 사용하거나 대괄호를 사용하여 직접 입력하는 방법이 있음
예) list1$name, list1[1:2]
subset() ->원하는 조건만 조회할 수 있는 함수
merge() -> 공통데이터를 출력해서 합침