当密钥具有多个组件时,我在尝试获取 keyval 对时被卡住了。
假设所有键都包含 3 个字符串组件,例如:{"I" "like" "Lucy"} 或 {"You" "hate" "Jimmy"}。
这 3 个字符串的组合将是唯一键。而我想要的 mapreduce 结果是 {"I" "like" "Lucy"} 或 {"You" "hate" "Jimmy"} 的记录数。
问题是我应该为 3 个字符串键使用什么样的结构?
如果我使用列表作为键:
LST1<-list(who="I", how="like", whom="Lucy")
LST2<-list(who="I", how="like", whom="Lucy")
LST1 和 LST2 应该具有相同的键值,但问题是它们是不同的对象,因此列表结构不能用作键。
如果我使用向量作为键:
v1<-c("I","like","lucy")
v2<-c("I","like","Jimmy")
R 将尝试比较同一位置的每个条目,并返回一个布尔值向量,在本例中为 {TRUE, TRUE, FALSE}。
有什么建议吗?我可以使用什么样的结构?或者有什么棘手的方法来处理这个问题?
我知道我可以用 Java 处理这个问题,但我需要 R 中的解决方案。3 个字符串的情况只是一个例子,组件可以是数字、字符串、字符等所有内容。