【发布时间】:2014-04-04 10:02:47
【问题描述】:
我有两个数据框:
>temp
Var1 Freq1
1 file-upload 1
2 image-processing 1
3 mime-types 1
4 php 5
>top
Var2 Freq2
1 file-upload 1
2 image-processing 1
3 mime-types 1
4 php 5
5 upload 1
6 firefox 2
7 machine-learning 1
8 matlab 1
9 r 2
10 c# 7
现在我在做:
m1 <- merge(temp, top, by.x = "Var1", by.y = "Var2", all.x = TRUE)
他们m1 将是:
Var1 Freq1 Freq2
1 file-upload 1 1
2 image-processing 1 1
3 mime-types 1 1
4 php 5 5
但m1$Var1 的级别数显示为 10 而不是 4,当我尝试根据 Var1 的值拆分 m1 时
x <- split(m1, m1$Var1)
length(x) 是 10 而不是 4,6 个元素显示这种值
$c#
[1] Var1 Freq1 Freq2
<0 rows> (or 0-length row.names)
我想从列表中删除这些元素,或者有什么方法可以让我在合并时的级别数等于 temp df 的级别数。
【问题讨论】: