匹配来自不同列/数据帧的数据-在R中工作
下面是一些示例数据匹配来自不同列/数据帧的数据-在R中工作,r,R,下面是一些示例数据 Dataset A id name reasonforlogin 123 Tom work 246 Timmy work 789 Mark play Dataset B id name reasonforlogin 789 Mark work 313 Sasha inte
Dataset A
id name reasonforlogin
123 Tom work
246 Timmy work
789 Mark play
Dataset B
id name reasonforlogin
789 Mark work
313 Sasha interview
000 Meryl interview
987 Dara play
789 Mark play
246 Timmy work
两个数据集。相同的列。行数不均匀
我想说些像这样的话
1) “我要所有出现在datasetA和datasetB中的id号”
或
2) “我想知道一个ID每天登录多少次,比如说第2天。”
那么答案是什么呢
1) 那么一个列表
[246, 789]
2) 因此,一个data.frame包含一个ID的“头”,然后是一个登录号的“行”
123, 246, 789, 313, 000, 987
0, 1, 2, 1, 1, 1
这似乎很容易,但我认为用大数据快速实现这一点并不简单。最初我计划在循环中进行循环,但我确信必须有一个术语来描述这种比较和可能已经做了类似事情的包。您需要
哪个和表
1) 查找两个data.frames中的ID
common_ids <- unique(df1[which(df1$id %in% df2$id), "id"])
您需要哪个
和表
1) 查找两个data.frames中的ID
common_ids <- unique(df1[which(df1$id %in% df2$id), "id"])
您需要哪个
和表
1) 查找两个data.frames中的ID
common_ids <- unique(df1[which(df1$id %in% df2$id), "id"])
您需要哪个
和表
1) 查找两个data.frames中的ID
common_ids <- unique(df1[which(df1$id %in% df2$id), "id"])
您可以使用dplyr同时执行这两项操作
1.
2.
您可以使用dplyr同时执行这两项操作
1.
2.
您可以使用dplyr同时执行这两项操作
1.
2.
您可以使用dplyr同时执行这两项操作
1.
2.
如果我们将A
作为第一个数据集,将B
作为第二个数据集,将id
作为字符列,以防止000
被打印为0
,那么我们可以
id
两个数据集通用:
intersect(A$id, B$id)
# [1] "246" "789"
第二天(B
)登录的id
的次数,包括那些根本没有登录的次数:
table(factor(B$id, levels = unique(c(A$id, B$id))))
# 123 246 789 313 000 987
# 0 1 2 1 1 1
如果我们将A
作为第一个数据集,将B
作为第二个数据集,将id
作为字符列,以防止000
被打印为0
,那么我们可以
id
两个数据集通用:
intersect(A$id, B$id)
# [1] "246" "789"
第二天(B
)登录的id
的次数,包括那些根本没有登录的次数:
table(factor(B$id, levels = unique(c(A$id, B$id))))
# 123 246 789 313 000 987
# 0 1 2 1 1 1
如果我们将A
作为第一个数据集,将B
作为第二个数据集,将id
作为字符列,以防止000
被打印为0
,那么我们可以
id
两个数据集通用:
intersect(A$id, B$id)
# [1] "246" "789"
第二天(B
)登录的id
的次数,包括那些根本没有登录的次数:
table(factor(B$id, levels = unique(c(A$id, B$id))))
# 123 246 789 313 000 987
# 0 1 2 1 1 1
如果我们将A
作为第一个数据集,将B
作为第二个数据集,将id
作为字符列,以防止000
被打印为0
,那么我们可以
id
两个数据集通用:
intersect(A$id, B$id)
# [1] "246" "789"
第二天(B
)登录的id
的次数,包括那些根本没有登录的次数:
table(factor(B$id, levels = unique(c(A$id, B$id))))
# 123 246 789 313 000 987
# 0 1 2 1 1 1
分别为1和2使用intersect
和table
分别为1和2使用intersect
和table
分别为1和2使用intersect
和table
这在我尝试的过程中效果很好。非常感谢!这对我所尝试的很有效。非常感谢!这对我所尝试的很有效。非常感谢!这对我所尝试的很有效。非常感谢!我感谢您的帮助,但对于任何可能看到这一点的人来说,这提供了副本。所以如果你能以倍数结束!如果不需要重复,只需使用unique
。请参阅编辑后的文章。我感谢您的帮助,但对于任何可能看到这篇文章的人来说,这篇文章都是重复的。所以如果你能以倍数结束!如果不需要重复,只需使用unique
。请参阅编辑后的文章。我感谢您的帮助,但对于任何可能看到这篇文章的人来说,这篇文章都是重复的。所以如果你能以倍数结束!如果不需要重复,只需使用unique
。请参阅编辑后的文章。我感谢您的帮助,但对于任何可能看到这篇文章的人来说,这篇文章都是重复的。所以如果你能以倍数结束!如果不需要重复,只需使用unique
。见编辑后的文章。