我想比较两个列表(两行数据帧)并计算两个列表之间有多少差异。R:列表2中列表1的元素数量/出现次数
例如:
列表1list1=a,b,c,a
list2=a,a,d,d
两个元素都在列表2
我能够做到这一点与一个循环,并总和,但它是非常低效的。在R中有这样的功能吗?
我检查了setdiff和比较软件包,但没有找到任何有用的东西。
感谢您的想法,
文森特
我的功能看起来像:
NRebalancing=function(NamePresent)
{
Nbexchange=NamePresent[,2]
Nbexchange=NamePresent[1,2]=0
for (i in 2:nrow(NamePresent))
{
print(i)
compteur=0
NameNeeded=NamePresent[i,]
NameNeeded=unique(NameNeeded)
NameNeeded=na.omit(NameNeeded)
for(j in 2:length(NameNeeded))
#j=1 correspond a une date
{
compteur = compteur+(abs(sum(NamePresent[i,]==as.character(NameNeeded[j]))-sum(NamePresent[i-1,]==as.character(NameNeeded[j]))))
}
Nbexchange[i]=compteur
}
return(Nbexchange)
}
对不起,关于名称。它是一个来自数据框的向量,因此变量类型可能不同...我将编辑问题 – VincentH 2012-07-16 09:23:43
记住向量可以有不同的类型:它们可以是字符,数字或逻辑 – csgillespie 2012-07-16 09:24:57
非常感谢!那是我正在寻找的。没有时间来编辑我的问题:) – VincentH 2012-07-16 09:25:08