我有一个格式奇怪的数据集,其中
第1行是在访问1时收集的主题1的性别和收入数据
第2行是在第2次访问时收集的受试者1的糖尿病和高血压病史数据
第3行是在访问1时收集的主题2的性别和收入数据
第4行是在第2次访问时收集的受试者2的糖尿病和高血压病史数据
等等
我使用R并想要组合每个主题的所有数据,以便新数据中有2行,第1行有主题1的性别收入糖尿病和高血压数据,第2行有主题2的数据。我可以得到一些帮助请?
答案 0 :(得分:0)
拆分然后合并。
(dat <- read.table("000.txt", head=F, as.is=T))
# V1 V2 V3
# 1 Bob Female 22445
# 2 Bob diabeteY HyperN
# 3 Lucy Male 12345
# 4 Lucy diabeteN HyperY
dat01 <- dat[seq(1, nrow(dat), by=2),]
names(dat01) <- c("name", "gender","income")
dat01
# name gender income
# 1 Bob Female 22445
# 3 Lucy Male 12345
dat02 <- dat[seq(2, nrow(dat), by=2),]
names(dat02) <- c("name", "diabet", "hyper")
dat02
# name diabet hyper
# 2 Bob diabeteY HyperN
# 4 Lucy diabeteN HyperY
(dat.final <- merge(dat01, dat02, by="name"))
# name gender income diabet hyper
# 1 Bob Female 22445 diabeteY HyperN
# 2 Lucy Male 12345 diabeteN HyperY