- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to add row percentages to contingency table in R?
To add row percentage to contingency table in R, we can use rowSums and sum function with table values and combine them with cbind function.
For Example, if we have a table called TAB then we can add row percentages to TAB by using the below command −
cbind(TAB,rowSums(TAB),rowSums(TAB)/sum(TAB))
Example 1
Following snippet creates a sample data frame −
Grp1<-sample(LETTERS[1:5],20,replace=TRUE) Grp2<-sample(letters[1:5],20,replace=TRUE) df1<-data.frame(Grp1,Grp2) df1
The following dataframe is created
Grp1 Grp2 1 A b 2 D d 3 A c 4 A b 5 D a 6 D a 7 A b 8 B b 9 A d 10 A d 11 B d 12 B d 13 E e 14 C b 15 E b 16 E d 17 C c 18 E c 19 E e 20 E d
To create contingency table based on columns Grp1 and Grp2 on the above created data frame, add the following code to the above snippet −
Grp1<-sample(LETTERS[1:5],20,replace=TRUE) Grp2<-sample(letters[1:5],20,replace=TRUE) df1<-data.frame(Grp1,Grp2) C_Table1<-table(df1$Grp1,df1$Grp2) C_Table1
If you execute all the above given snippets as a single program, it generates the following Output −
a b c d e A 0 3 1 2 0 B 0 1 0 2 0 C 0 1 1 0 0 D 2 0 0 1 0 E 0 1 1 2 2
To find row percentages to C_Table1 on the above created data frame, add the following code to the above snippet −
Grp1<-sample(LETTERS[1:5],20,replace=TRUE) Grp2<-sample(letters[1:5],20,replace=TRUE) df1<-data.frame(Grp1,Grp2) C_Table1<-table(df1$Grp1,df1$Grp2) cbind(C_Table1,rowSums(C_Table1),rowSums(C_Table1)/sum(C_Table1))
Output
If you execute all the above given snippets as a single program, it generates the following Output −
a b c d e A 0 3 1 2 0 6 0.30 B 0 1 0 2 0 3 0.15 C 0 1 1 0 0 2 0.10 D 2 0 0 1 0 3 0.15 E 0 1 1 2 2 6 0.30
Example 2
Following snippet creates a sample data frame −
f1<-sample(1:4,20,replace=TRUE) f2<-sample(c(5,10,15,20),20,replace=TRUE) df2<-data.frame(f1,f2) df2
The following dataframe is created
f1 f2 1 1 20 2 2 5 3 4 5 4 3 20 5 1 15 6 2 5 7 1 10 8 4 5 9 1 5 10 1 10 11 2 15 12 3 20 13 4 5 14 1 10 15 4 5 16 2 10 17 2 10 18 2 15 19 1 5 20 4 15
To create contingency table based on columns f1 and f2 on the above created data frame, add the following code to the above snippet −
f1<-sample(1:4,20,replace=TRUE) f2<-sample(c(5,10,15,20),20,replace=TRUE) df2<-data.frame(f1,f2) C_Table2<-table(df2$f1,df2$f2) C_Table2
If you execute all the above given snippets as a single program, it generates the following Output −
5 10 15 20 1 2 3 1 1 2 2 2 2 0 3 0 0 0 2 4 4 0 1 0
To find row percentages to C_Table2 on the above created data frame, add the following code to the above snippet −
f1<-sample(1:4,20,replace=TRUE) f2<-sample(c(5,10,15,20),20,replace=TRUE) df2<-data.frame(f1,f2) C_Table2<-table(df2$f1,df2$f2) cbind(C_Table2,rowSums(C_Table2),rowSums(C_Table2)/sum(C_Table2))
Output
If you execute all the above given snippets as a single program, it generates the following Output −
5 10 15 20 1 2 3 1 1 7 0.35 2 2 2 2 0 6 0.30 3 0 0 0 2 2 0.10 4 4 0 1 0 5 0.25
- Related Articles
- How to create a contingency table using datasets in base R?
- How to create NA column for a contingency table in R?
- How to add table row in jQuery?
- Contingency Table in Python
- How to find contingency table of means from an R data frame using cast function?
- How to add a row compression to a DB2 table TAB1?
- How to add a new row in a table using jQuery?
- How to create a contingency table with sum on the margins from an R data frame?
- How to Add Subtotals and Total Row in a Table in Excel?
- Add information to the table row with Bootstrap
- How to add a vector to each row of a matrix in R?
- How to add percentages on top of bars in Seaborn using Matplotlib?
- How do we add a table row in HTML?
- How to add a row to a frame from another data frame in R?
- How to add a row to a table using only strings from another table as reference in MySQL?
