R에서 인도 요리 뷔페 과정 구현

11029 단어 R

기사의 목적



R을 사용하여 인도 요리 뷔페 과정을 구현합니다.
참고 : 비 파라 메트릭 베이즈 포인트 프로세스 및 통계적 기계 학습 수리

목차



No.
목차

1

인도 요리 뷔페 과정 수식

2

구현

3

시각화



1. 인도 요리 뷔페 과정 수식





2. 구현


n <- 30
alpha <- 5
set.seed(100)
for(i in 1:n){
  #mの計算
  if(i==1){
    m <- rep(1, rpois(1,alpha/1))
  }else{
    m <- apply(m.data, 2, sum)
  }
  #次の行のデータ作成
  z <- rbinom(length(m/(i+1)), 1, m/(i+1)) 
  m.next <- append(z, rep(1, rpois(1,alpha/(i+1))))
  #i行目までのデータを整理して、データ結合
  if(i==1){
    m.new <- append(m, rep(0, length(m.next)-length(m)))
    m.data <- rbind(m.new, m.next)
  }else{
    m.new.data <- t(apply(m.data, 1, function(x) 
      append(x, rep(0, length(m.next)-length(m)))))
    m.data <- rbind(m.new.data, m.next)
  }
}

3. 시각화


library(ggplot2)
library(reshape2)
m.data <- data.frame(m.data)
m.data$row <- as.factor(paste0("Y", 1:nrow(m.data)))
m.data <- transform(m.data, row= factor(row, levels = paste0("Y", nrow(m.data):1)))
data <- melt(m.data)
ggplot(data, aes(variable, row)) +
  geom_tile(aes(fill=value))+
  labs(x="x",y="y",title="バイナリ行列")



◯SNS
・youtube
htps : // 코 m / 찬 l / 우 CFDy ぇ ywt hdtwqC3

· Twitter
htps : // 라고 해서 r. 코 m / D 켄_타

좋은 웹페이지 즐겨찾기