Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 向长格式数据集添加标识符(元数据)列_R_Dataframe_Metadata - Fatal编程技术网

R 向长格式数据集添加标识符(元数据)列

R 向长格式数据集添加标识符(元数据)列,r,dataframe,metadata,R,Dataframe,Metadata,给定如下长格式数据集: ID_2<-c('A','A','A','B','B','C','E','E','F','F','H','H','H') Type<-c('Blk','Wht','Gre','Blk','Wht','Blk','Blk','Wht','Blk','Wht','Wht','Blk','Gre') Count<-c(1,2,2,1,2,1,2,1,2,1,2,1,2) DF2<-data.frame(ID_2,Type,Count) Year Lo

给定如下长格式数据集:

ID_2<-c('A','A','A','B','B','C','E','E','F','F','H','H','H')
Type<-c('Blk','Wht','Gre','Blk','Wht','Blk','Blk','Wht','Blk','Wht','Wht','Blk','Gre')
Count<-c(1,2,2,1,2,1,2,1,2,1,2,1,2)
DF2<-data.frame(ID_2,Type,Count)
Year  Location  Site  ID Type Count
2005     EAST    1    A  Blk     1
2005     EAST    1    A  Wht     2
2005     EAST    1    A  Gre     2
2005     EAST    2    B  Blk     1
2006     WEST    3    C  Blk     1
2007    NORTH    5    E  Blk     2
2007    NORTH    5    E  Wht     1
2008     EAST    6    F  Blk     2
2008     EAST    6    F  Wht     1
2008     EAST    8    H  Wht     2
2008     EAST    8    H  Blk     1
2008     EAST    8    H  Gre     2
2006     WEST    4  Flag Flag   -999
2008     EAST    7  Flag Flag   -999

这似乎是一个简单的
merge()

>合并(DF1,DF2,by.x=“ID\u 1”,by.y=“ID\u 2”,all=TRUE)
ID_1年位置站点类型计数
1 A 2005东区1座1
2 A 2005东1西隧2
3 A 2005东区1 Gre 2
4 B 2005东区2号1座
5 B 2005东2西隧2
6 C 2006西3栋1
7东2007北5栋2
8东2007北5西隧1
2008年9楼东6座2
10楼2008东6西隧1
11小时2008东8西隧2
12小时2008东8栋1
13 H 2008东8 Gre 2
14 NAN 2006西4 NA
15南2008东7北

你需要做一些额外的工作,用你真正想要使用的任何东西来替换
NA
值。

很好的一点-我想合并两个数据帧,它们必须有相同的行数。我看我错了。最后,替换NA的----Merged$Count[is.NA(Merged$Count)]
Year  Location  Site  ID Type Count
2005     EAST    1    A  Blk     1
2005     EAST    1    A  Wht     2
2005     EAST    1    A  Gre     2
2005     EAST    2    B  Blk     1
2006     WEST    3    C  Blk     1
2007    NORTH    5    E  Blk     2
2007    NORTH    5    E  Wht     1
2008     EAST    6    F  Blk     2
2008     EAST    6    F  Wht     1
2008     EAST    8    H  Wht     2
2008     EAST    8    H  Blk     1
2008     EAST    8    H  Gre     2
2006     WEST    4  Flag Flag   -999
2008     EAST    7  Flag Flag   -999
> merge(DF1, DF2, by.x = "ID_1", by.y = "ID_2", all = TRUE)
   ID_1 Year Location Site Type Count
1     A 2005     EAST    1  Blk     1
2     A 2005     EAST    1  Wht     2
3     A 2005     EAST    1  Gre     2
4     B 2005     EAST    2  Blk     1
5     B 2005     EAST    2  Wht     2
6     C 2006     WEST    3  Blk     1
7     E 2007    NORTH    5  Blk     2
8     E 2007    NORTH    5  Wht     1
9     F 2008     EAST    6  Blk     2
10    F 2008     EAST    6  Wht     1
11    H 2008     EAST    8  Wht     2
12    H 2008     EAST    8  Blk     1
13    H 2008     EAST    8  Gre     2
14  NAN 2006     WEST    4 <NA>    NA
15  NAN 2008     EAST    7 <NA>    NA