Rで二値応答データ

treatment diapause nondiapause
A 0 3
B 1 3
C 3 1

trt response
A 1
A 1
A 1
B 0
B 1
B 1
B 1
C 0
C 0
C 0
C 1

みたいにする方法。前に自分でやったか人に教えてもらったことがあるような気がするが completely に忘れてしまった。ご存知のかた、ご教示ねがえると幸いです。
 Rjpwikiで聞いてもいいんだが、あそこ怖いんだよね。

ーーーーーーーーーーーーーーーーーーーーーーーーーー
# 追記:十年前の自分へ (2018/05/25)
# こういうときは、とりあえずベクトルか行列にして、露骨にforループを決めるしかないのでは。

dp <- c(0,1,3) # diapausing
nd <- c(3,3,1) #non-diapausing

x <- rep( c("a","b","c"), dp + nd)
y <- NULL
for (i in 1:3){
y0 <- c (rep(0, dp[i]), rep(1, nd[i]))
y <- c (y, y0)
}

(data.0 <- data.frame (trt = x, response = y))
str (data.0) # 型の確認

# 分析
l.res <- lm (response ~ trt, data = data.0)
anova (l.res)