R中的Mapreduce-我如何实现;循环if";减少?
这是我的示例数据集:R中的Mapreduce-我如何实现;循环if";减少?,r,loops,if-statement,mapreduce,R,Loops,If Statement,Mapreduce,这是我的示例数据集: x <- c("A1", "A1", "A1", "A2", "A2", "A2", "A2", "A3") y <- c(5347, 5347, 5347, 1819, 1758, 1212, 1212, 1456) 我如何计算这一点,循环观察X列和Y列,只要在X列中搜索新的数字,并在Y列中计算唯一的数字,以查找X列中的所有唯一数字???问题不清楚(可能是因为英语问题)。但从预期的结果来看,我认为您正在寻找类似的东西: tapply(y,x,function
x <- c("A1", "A1", "A1", "A2", "A2", "A2", "A2", "A3")
y <- c(5347, 5347, 5347, 1819, 1758, 1212, 1212, 1456)
我如何计算这一点,循环观察X列和Y列,只要在X列中搜索新的数字,并在Y列中计算唯一的数字,以查找X列中的所有唯一数字???问题不清楚(可能是因为英语问题)。但从预期的结果来看,我认为您正在寻找类似的东西:
tapply(y,x,function(t)length(unique(t)))
A1 A2 A3
1 3 1
其中英文:
计算每个x的唯一y数
你还不明白什么?@Roger,我们和agstudy处境相似,你需要发布你的问题的预期样本输出sense@Roger我知道你现在是新来的。请阅读了解如何提问。也许现在是更清楚的问题?我知道这个函数,但它在mapreduce中不起作用…可能这应该是“if循环”
ID Count Unique number
A1 1 (only 5347)
A2 3 (1819, 1758, 1212)
A3 1 (only 1456)
tapply(y,x,function(t)length(unique(t)))
A1 A2 A3
1 3 1