如何用R数据帧的边距创建和表?
列联表中的空白行和列的总和总是有用的,因为它们用于不同类型的计算,例如比值比,概率等。如果R数据帧具有因子列,那么我们可以为此创建列联表数据帧,可以使用addmargins函数来完成。
示例
请看以下数据帧-
x1<-sample(LETTERS[1:4],20,replace=TRUE)x2<-sample(c("India","USA","China"),20,replace=TRUE)
df1<-data.frame(x1,x2)
df1
输出结果
x1 x21 B China
2 B India
3 B India
4 D India
5 B India
6 D USA
7 D USA
8 A USA
9 D USA
10 C India
11 B China
12 D China
13 D China
14 A India
15 D USA
16 A China
17 D India
18 A China
19 B China
20 A India
为x1和x2创建列联表,并在边距上加和-
示例
>CT1<-addmargins(table(df1$x1,df1$x2),c(1,2))>CT1
输出结果
China India USA SumA 2 2 1 5
B 3 3 0 6
C 0 1 0 1
D 2 2 4 8
Sum 7 8 5 20
让我们看另一个例子-
示例
y1<-sample(c("John","Christina","Michael","Sona"),20,replace=TRUE)y2<-sample(c("1","2","3","4"),20,replace=TRUE)
df2<-data.frame(y1,y2)
df2
输出结果
y1 y21 Sona 2
2 John 3
3 John 4
4 Sona 2
5 Christina 4
6 Michael 2
7 Michael 4
8 John 1
9 John 4
10 John 1
11 Michael 3
12 Sona 1
13 Sona 2
14 Michael 2
15 Michael 2
16 Michael 1
17 Michael 3
18 Christina 1
19 Christina 4
20 Sona 1
创建y1和y2的列联表,并在边距上加和-
示例
>CT2<-addmargins(table(df2$y1,df2$y2),c(1,2))>CT2
输出结果
1 2 3 4 SumChristina 1 0 0 2 3
John 2 0 1 2 5
Michael 1 3 2 1 7
Sona 2 3 0 0 5
Sum 6 6 3 5 20
以上是 如何用R数据帧的边距创建和表? 的全部内容, 来源链接: utcz.com/z/360989.html