R 如何将数据帧(B)中的一列合并到数据帧(a)中,但将数据帧(a)中另一列的值组织列(Y)?
我有两个数据框,其中包含来自同一组32个受试者的数据。数据帧(B)具有按受试者编号(1-32)排序的测试结果。我想将此数据移动到数据框(A)中,其中我的其余数据为,并且将主题数据从(B)链接到(A)中的相应数据。两个数据帧都有一个名为(SID)的共享列,对应于同一个人。我想将Score列从数据帧(B)移动到(A)。我该怎么做 在(B)项中: SID1,2,3,4…R 如何将数据帧(B)中的一列合并到数据帧(a)中,但将数据帧(a)中另一列的值组织列(Y)?,r,dataframe,R,Dataframe,我有两个数据框,其中包含来自同一组32个受试者的数据。数据帧(B)具有按受试者编号(1-32)排序的测试结果。我想将此数据移动到数据框(A)中,其中我的其余数据为,并且将主题数据从(B)链接到(A)中的相应数据。两个数据帧都有一个名为(SID)的共享列,对应于同一个人。我想将Score列从数据帧(B)移动到(A)。我该怎么做 在(B)项中: SID1,2,3,4… 得分27,39,19,38 在(A)项中: SID1,2,3,4… 性别M,F,F,M 第(一)项: SID1,2,3,4… 性别M
得分27,39,19,38 在(A)项中: SID1,2,3,4…
性别M,F,F,M 第(一)项: SID1,2,3,4…
性别M,F,F,M.
得分27,39,19,38
我真的很想用一种更好的格式来表达,对此我深表歉意 这基本上是一个合并任务。正如@NelsonGon所建议的,检查该帖子,下次添加数据,以便重现您的问题:
#Data
A <- data.frame(SID=1:4,Gender=c('M','F','F','M'),stringsAsFactors = F)
B <- data.frame(SID=1:4,Score=c(27,39,19,18))
#Merge
C <- merge(A,B,by = 'SID')
SID Gender Score
1 1 M 27
2 2 F 39
3 3 F 19
4 4 M 18
#数据
A这基本上是一项合并任务。正如@NelsonGon所建议的,检查该帖子,下次添加数据,以便重现您的问题:
#Data
A <- data.frame(SID=1:4,Gender=c('M','F','F','M'),stringsAsFactors = F)
B <- data.frame(SID=1:4,Score=c(27,39,19,18))
#Merge
C <- merge(A,B,by = 'SID')
SID Gender Score
1 1 M 27
2 2 F 39
3 3 F 19
4 4 M 18
#数据
A您需要某种类型的连接()。我将用dplyr::full\u join来回答
## Create data frames
A = data.frame(
SID = c(1, 2, 3, 4),
score = c(27, 39, 19, 38)
)
B = data.frame(
SID = c(1, 2, 3, 4),
gender = c("M", "F", "F", "M")
)
library(dplyr)
C = full_join(A, B, by = "SID")
C
# SID score gender
# 1 1 27 M
# 2 2 39 F
# 3 3 19 F
# 4 4 38 M
您需要某种类型的join()。我将用dplyr::full\u join来回答
## Create data frames
A = data.frame(
SID = c(1, 2, 3, 4),
score = c(27, 39, 19, 38)
)
B = data.frame(
SID = c(1, 2, 3, 4),
gender = c("M", "F", "F", "M")
)
library(dplyr)
C = full_join(A, B, by = "SID")
C
# SID score gender
# 1 1 27 M
# 2 2 39 F
# 3 3 19 F
# 4 4 38 M
确实如此,而且非常详细。我对Rstudio非常陌生,因此在前面的问题搜索栏中搜索可能的答案时,我的术语非常有限,很可能是因为我没有找到已回答的问题。谢谢你的链接,有很多信息需要消化。确实如此,而且非常详细。我对Rstudio非常陌生,因此在前面的问题搜索栏中搜索可能的答案时,我的术语非常有限,很可能是因为我没有找到已回答的问题。谢谢你的链接,有很多信息需要消化。在我下一次发布之前,我将了解如何在问题中添加数据。我还不知道是怎么做到的。但感谢您的评论、解决方案和建议:)@HarryCaulton好极了!下次您可以使用dput(yourdata)
或dput(head(yourdata,20))
并将输出粘贴到问题中:)在下次发布之前,我将了解如何向问题添加数据。我还不知道是怎么做到的。但感谢您的评论、解决方案和建议:)@HarryCaulton好极了!下次您可以使用dput(yourdata)
或dput(head(yourdata,20))
并将输出粘贴到问题中:)谢谢您的解决方案和示例。我希望你有一个愉快的一天谢谢你的解决方案和例子。我希望你有一个愉快的一天