在将数据帧与 R 中的 NA 以外的另一个值合并后,如何填充缺失值?
要在将数据帧与 R 中的 NA 以外的另一个值合并后填充缺失值,我们可以按照以下步骤操作 -
首先,创建两个数据框。
然后,通过两者之间的公共列合并数据框。
之后,用另一个值替换 NA。
示例
创建第一个数据框
让我们创建一个数据框,如下所示 -
ID<-1:10输出结果x<-sample(1:100,10)
df1<-data.frame(ID,x)
df1
执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-
ID x1 1 28
2 2 50
3 3 13
4 4 43
5 5 48
6 6 49
7 7 52
8 8 54
9 9 72
10 10 32
创建第二个数据框
让我们创建一个数据框,如下所示 -
ID<-1:15输出结果y<-sample(1:10,15,replace=TRUE)
df2<-data.frame(ID,y)
df2
执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-
ID y1 1 2
2 2 9
3 3 10
4 4 8
5 5 10
6 6 7
7 7 9
8 8 4
9 9 2
10 10 9
11 11 3
12 12 5
13 13 10
14 14 7
15 15 1
合并数据框
使用合并功能按 ID 列合并 df1 和 df2 -
ID<-1:10输出结果x<-sample(1:100,10)
df1<-data.frame(ID,x)
ID<-1:15
y<-sample(1:10,15,replace=TRUE)
df2<-data.frame(ID,y)
merge(df1,df2,all=TRUE,by="ID")
DF<-merge(df1,df2,all=TRUE,by="ID")
DF
ID x y1 1 28 2
2 2 50 9
3 3 13 10
4 4 43 8
5 5 48 10
6 6 49 7
7 7 52 9
8 8 54 4
9 9 72 2
10 10 32 9
11 11 NA 3
12 12 NA 5
13 13 NA 10
14 14 NA 7
15 15 NA 1
用另一个值替换 NA
使用is.na函数用点 (.) 替换 DF 中的 NA,如下所示 -
ID<-1:10输出结果x<-sample(1:100,10)
df1<-data.frame(ID,x)
ID<-1:15
y<-sample(1:10,15,replace=TRUE)
df2<-data.frame(ID,y)
merge(df1,df2,all=TRUE,by="ID")
DF<-merge(df1,df2,all=TRUE,by="ID")
DF[is.na(DF)]<-"."
DF
ID x y1 1 28 2
2 2 50 9
3 3 13 10
4 4 43 8
5 5 48 10
6 6 49 7
7 7 52 9
8 8 54 4
9 9 72 2
10 10 32 9
11 11 . 3
12 12 . 5
13 13 . 10
14 14 . 7
15 15 . 1
以上是 在将数据帧与 R 中的 NA 以外的另一个值合并后,如何填充缺失值? 的全部内容, 来源链接: utcz.com/z/347489.html