목록Coding/R-programming (22)
exestudiary
이산확률분포 # 이산확률분포 - random number 활용 x = 0:n y = dbinom(x, n, p) plot(x,y, type = "h", xlim = c(0,n), lwd = 3, col = "tomato") # 추출하는 난수의 개수 조정 n = 25 p = 0.2 random.x10 = rbinom(10, n, p) plot(table(random.x10), xlim = c(0,n), lwd = 3, col = "red") mean(random.x10) ; var(random.x10) random.x100 = rbinom(100, n, p) plot(table(random.x100), xlim = c(0,n), lwd = 3, col = "red") mean(random.x100) ; v..
R에서 제공하는 분포 관련 함수 density function of dist. - d### (x, ......) distribution function of dist. - p###(q, ......) # = P(X > {P(X
이산확률분포 이산균등분포 > n개의 불연속적인 값을 가지는 확률변수 X가 아래와 같은 pmf를 가질 때 이산균등분포를 따른다고 하고, > X~U(a,b) 혹은 X~unif(a,b)로 표기함. p(x) = 1/n , x = a, a+1, .... ,b ## 이산균등분포 (Discrete uniform distribution) ---- n = 10 p = 1/n x = 1:n p.x = rep(p, n) plot(x, p.x, xlim = c(1,n), ylim = c(0,1)) 베르누이 시행 > 결과가 오직 두 가지 결과만을 가지고 성공할 확률이 일정한 실험 이항분포 > 이항실험에 대해서 n번 시행 중 꼭 x번의 성공할 확률 > 베르누이 시행을 n회 시행했을 때 나오는 총 성공 횟수를 확률변수 X라고 하면..
데이터를 시각화 하기 전에 파일 불러오기 setwd("C:\\Users\\user\\OneDrive - 경북대학교\\통계학과\\1-2\\R프로그래밍 및 실험") #1 dat1 = read.csv("w7_2 csv.csv") # 띄어쓰기를 .으로 구분함 #2 dat1 = readr::read_csv("w7_2 csv.csv") # 띄어쓰기 있는 곳은 ``으로 묶어서 표기 시각화를 통해 데이터 분포 확인 히스토그램 hist(dat1$나이) 기호에 따라서 히스토그램을 더 보기 좋게 만들 수 있음. hist(dat1$나이, main = "예제데이터의 나이(1)", xlab = "age", ylab = "빈도") # x축의 이름: xlab # y축의 이름: ylab hist(dat1$나이, main = "예제데이..
정렬 (sorting) - 일반적으로 정렬하는 변수는 수치형이거나 문자형 - 종류: 오름차순, 내림차순 - 숫자 > 영어 > 한글 - sort(, ...) - 예시 c("a", "b", "가", "나", "1", "2") vec = sample(c("a","b","가","나","1","2"), 10, replace = T) sort(vec) # ascending sort(vec, decreasing = T) # descending sort(c("a", "b", NA), na.last = NA) sort(c("a", "b", NA), na.last = TRUE) # NA의 값이 제일 뒤에 출력 sort(c("a", "b", NA), na.last = F) # NA의 값이 앞에서 출력 그룹화(grouping..
mat1 = matrix(1:20, nr = 5, nc = 4) mat2 = matrix(-1:-20, nr = 5, nc = 4) mat0 = matrix(0, nr = 5, nc = 4) # 모든 항을 0으로 만들어줌. 즉, 영행렬을 만들어줌. mat1 + mat2 == mat0 # T, 값 하나하나를 지정해서 T를 출력해줌. mat1 - mat1 == mat0 # T, 값 하나하나를 지정해서 T를 출력해줌. 10*mat1 ; mat1/2 # 항마다 곱해주고 나눠줌. t(mat1) # transposed matrix(전치행렬) : 대각선을 기준으로 뒤집은 행렬 행렬 A의 덧셈의 역원: -A 항등행렬(I): 대각성분은 모두 1, 나머지 원소는 0인 행렬 행렬의 곱셈 AI = IA = A AB = BA ..
행렬 (matrix) - 동일한 자료형인 원소로 구성된 2차원의 자료 구조 배열 (array) - matrix의 확장된 형태로 3차원 이상의 배열을 의미 - 동일한 자료형, n 차원 이상 array(,dim = c(행의 수, 열의 수, 페이지 수)) # 참조 [, , ] [, , ] [, , ] [, , ] # 예시 # 첫 항이 0이고 끝 항이 10인 길이가 48이 되는 등차수열을 원소로 가지는 3X4X4 배열 arry1 arry1 = array(seq(0, 10, length = 48), dim = c(3,4,4)) arry1[3,2,3] arry1[3,2, ] arry1[1, , ] arry1[ ,3, ] 리스트(list) - vector와 같은 선형구조 - 각 원소별로 다양한 형태의 자료를 가질 수..
자료구조 구분 단일 자료형 다중 자료형 그외 1차원 Vector List Factor 2차원 Matrix Data Frame N차원 Array vector 생성 vec0 = 101 vec1 = c(1, 30, -3) vec2 = c("banana", "apple", "pear") vec3 = 1:9 vec4 = seq(1, 10, by = 4) # 1부터 10까지 4씩 더한 벡터 vec5 = seq(1, 100, length = 9) # 1부터 100까지 등간격으로 9개의 원소를 가짐. vec6 = rep(1:3, times = 3) # 1:3을 3번 반복 vec7 = rep(1:3, each = 3) # 1:3의 원소를 각각 3번씩 반복 seq, rep 구분 seq는 from이랑 to가 있어서 1:10..
변수 - 숫자나 문자열 등 하나의 항목에 이름을 붙인 것 - 1개의 변수는 하나의 데이터를 보관할 수 있음. x1 = 5 ; x2 = 7 x1+x2 y = x2 - x1 ls() # 현재 저장된 변수 리스트 확인 rm(y) ; ls() # y만 삭제 후 변수 리스트 확인 rm(list = ls()) ; ls() # 저장된 변수 모두 삭제 후 변수 리스트 확인 변수의 종류 numeric(수치형) character(문자형) logical(논리형) complex(복소수형) 저장된 변수의 자료형 확인 mode(x1) # numeric으로 출력 str(x1) # num 5로 출력 is.numeric(x1) # numeric 외에 자료형 다 가능 변수의 자료형 변경 as.numeric(x1) # as.charact..
Review example = read.csv("C:\\Users\\user\\OneDrive - 경북대학교\\통계학과\\1-2\\R프로그래밍 및 실험\\w5_1 covid19_psyco.csv") # example에서 관찰값 200개를 랜덤으로 뽑고 앞 변수(열) 5개만 선택하여 example2로 저장 example2 = head(example[sample(1:nrow(example), 200), 1:5]) # example2의 occupation의 빈도표 table(example$occupation) # example2의 gender와 occupation의 분할표를 출력 table(example2$gender, example2$occupation) # example2의 line_of_work에 포함된..
