我有一个大约有一百万行的文件。有些是相同的,有些是不同的。我想知道每个人有多少。我这样做是:
data<-read.table('Rtest2.txt', header=TRUE, sep='\t')
Warning message:
In scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, :
EOF within quoted string
attach(data)
leaf_count=data[,1]
table(leaf_count)
然而,结果只是所有不同类别的一小部分。它达到426类(约170,000),就是这样。对R有限制吗或我做错了什么?
萨姆
答案 0 :(得分:0)
如果您的数据位于data.frame
,,并且您想知道重复的行数,我建议您使用aggregate
,如下例所示:
> d <- data.frame(a=c(1,1,1,2), b=c("A","A","B","C"))
> d
a b
1 1 A
2 1 A
3 1 B
4 2 C
> aggregate(1:nrow(d), by=d, FUN=length)
a b x
1 1 A 2
2 1 B 1
3 2 C 1
要删除单行中的重复项 ,请使用:
> unique(d$a)
[1] 1 2
> unique(d$b)
[1] A B C
Levels: A B C
如果只有几列定义了类别(例如a
和b
),请使用以下命令:
result <- aggregate(1:nrow(d), by=list(a=d$a, b=d$b), FUN=length)