我正在尝试合并以下值数据集,这是一种维度化的。这里的变量是
activity_labels <-
activity_id activity_name
1 WALKING
2 WALKING_UPSTAIRS
3 WALKING_DOWNSTAIRS
4 SITTING
5 STANDING
6 LAYING
使用另一个类似于以下内容的数据集:
activities_raw <-
activity_id
5
5
3
3
4
2
我期望看到的是:
activity_id activity_name
5 STANDING
5 STANDING
3 WALKING_DOWNSTAIRS
3 WALKING_DOWNSTAIRS
4 SITTING
2 WALKING_UPSTAIRS
但是,我看到的是完全不同的东西。实际上,看起来我正在做的合并是更改activities_raw的值,这是我的记录级数据。我明白这一点:
activity_id activity_name
1 WALKING
1 WALKING
1 WALKING
1 WALKING
1 WALKING
1 WALKING
我尝试了内连接,左连接,右连接等。这是我内连接的一个例子:
merge(activities_raw , activity_labels , by="activity_id")
非常感谢任何帮助。
答案 0 :(得分:0)
merge
在这里工作正常:
merge(xx2,xx1,sort=FALSE)
# activity_id activity_name
# 1 5 STANDING
# 2 5 STANDING
# 3 3 WALKING_DOWNSTAIRS
# 4 3 WALKING_DOWNSTAIRS
# 5 4 SITTING
# 6 2 WALKING_UPSTAIRS
数据在哪里:
xx1 <- read.table(text="activity_id activity_name
1 WALKING
2 WALKING_UPSTAIRS
3 WALKING_DOWNSTAIRS
4 SITTING
5 STANDING
6 LAYING",header=TRUE)
xx2 <- read.table(text="activity_id
5
5
3
3
4
2",header=TRUE)