我有一个包含40列的数据集,每列有100.000行。因为列数很大,我想删除其中的一些。我想从10.000-20.000删除行;从30.000-40.000和60.000-70.000;因此,我得到一个包含40列70.000行的数据集。第一列是ID以1开头(称为ItemID),最后一列以100.000结尾。有人可以帮助我。
尝试将列从10000删除到20000,但它不起作用(假设数据集称为“数据”):
Data <- Data[Data$ItemID>10000 && Data$ItemID<20000]
答案 0 :(得分:2)
采取严厉的方式。这样的东西适合你的需求?
dat <- data.frame(ItemID=1:100, x=rnorm(100))
# via row numbers
ind <- c(10:20,30:40,60:70)
dat <- dat[-ind,]
# via logical vector
ind <- with(dat, { (ItemID >= 10 & ItemID <= 20) |
(ItemID >= 30 & ItemID <= 40) |
(ItemID >= 60 & ItemID <= 70) })
dat2 <- dat[!ind,]
要根据数据集的大小(乘法可能),将其设置为数据集的比例,只需ind
。
答案 1 :(得分:1)
我认为你应该能够做到
ps -p
然后以类似的方式删除其他行。