- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
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
Find the row means for columns starting with a string in an R data frame.
To find the row means for columns starting with specific string in an R data frame, we can use mutate function of dplyr package along with rowMeans function.
For Example, if we have a data frame called df that contains three columns say x1_x2, x1_x3, x1_x2 and we want to find the row means for columns x1_x2 and x1_x3 then, we can use the below command −
df%%mutate(X1_Cmbn=select(.,starts_with("x1_")) %% rowMeans())
Example 1
Following snippet creates a sample data frame −
Grp1_x<-rpois(20,2) Grp1_y<-rpois(20,5) Grp2_y<-rpois(20,5) Grp2_x<-rpois(20,2) df1<-data.frame(Grp1_x,Grp1_y,Grp2_y,Grp2_x) df1
The following dataframe is created
Grp1_x Grp1_y Grp2_y Grp2_x 1 1 5 4 4 2 1 3 4 2 3 0 4 7 2 4 2 4 2 1 5 1 3 7 3 6 3 5 4 2 7 4 10 6 3 8 5 5 4 2 9 2 2 5 1 10 7 2 3 4 11 1 3 4 3 12 1 5 4 1 13 2 11 7 6 14 3 8 4 1 15 2 7 5 2 16 2 1 3 1 17 3 3 8 2 18 1 2 4 3 19 1 5 7 2 20 0 4 1 2
To load dplyr package and find the row means of columns having Grp1_ in the column name on the above created data frame, add the following code to the above snippet −
Grp1_x<-rpois(20,2) Grp1_y<-rpois(20,5) Grp2_y<-rpois(20,5) Grp2_x<-rpois(20,2) df1<-data.frame(Grp1_x,Grp1_y,Grp2_y,Grp2_x) library(dplyr) df1%%mutate(Group_1=select(.,starts_with("Grp1_")) %% rowMeans())
Output
If you execute all the above given snippets as a single program, it generates the following Output −
Grp1_x Grp1_y Grp2_y Grp2_x Group_1 1 1 5 4 4 3.0 2 1 3 4 2 2.0 3 0 4 7 2 2.0 4 2 4 2 1 3.0 5 1 3 7 3 2.0 6 3 5 4 2 4.0 7 4 10 6 3 7.0 8 5 5 4 2 5.0 9 2 2 5 1 2.0 10 7 2 3 4 4.5 11 1 3 4 3 2.0 12 1 5 4 1 3.0 13 2 11 7 6 6.5 14 3 8 4 1 5.5 15 2 7 5 2 4.5 16 2 1 3 1 1.5 17 3 3 8 2 3.0 18 1 2 4 3 1.5 19 1 5 7 2 3.0 20 0 4 1 2 2.0
Example 2
Following snippet creates a sample data frame −
MaleHeight<-sample(150:180,20) MaleWeight<-sample(50:80,20) FemaleHeight<-sample(150:180,20) FemaleWeight<-sample(50:80,20) df2<-data.frame(MaleHeight,MaleWeight,FemaleHeight,FemaleWeight) df2
The following dataframe is created
MaleHeight MaleWeight FemaleHeight FemaleWeight 1 178 61 177 51 2 172 60 169 73 3 174 57 173 53 4 152 62 180 50 5 169 68 168 54 6 177 56 153 68 7 154 69 150 56 8 155 71 175 75 9 160 73 171 60 10 150 50 165 64 11 151 75 156 72 12 168 79 174 78 13 173 64 179 62 14 170 65 178 70 15 161 55 152 65 16 171 67 166 67 17 157 53 158 59 18 153 58 159 55 19 163 72 151 63 20 167 76 170 80
To find the row means of columns having Male in the column name on the above created data frame, add the following code to the above snippet −
MaleHeight<-sample(150:180,20) MaleWeight<-sample(50:80,20) FemaleHeight<-sample(150:180,20) FemaleWeight<-sample(50:80,20) df2<-data.frame(MaleHeight,MaleWeight,FemaleHeight,FemaleWeight) df2%%mutate(Males=select(.,starts_with("Male")) %% rowMeans())
Output
If you execute all the above given snippets as a single program, it generates the following Output −
MaleHeight MaleWeight FemaleHeight FemaleWeight Males 1 178 61 177 51 119.5 2 172 60 169 73 116.0 3 174 57 173 53 115.5 4 152 62 180 50 107.0 5 169 68 168 54 118.5 6 177 56 153 68 116.5 7 154 69 150 56 111.5 8 155 71 175 75 113.0 9 160 73 171 60 116.5 10 150 50 165 64 100.0 11 151 75 156 72 113.0 12 168 79 174 78 123.5 13 173 64 179 62 118.5 14 170 65 178 70 117.5 15 161 55 152 65 108.0 16 171 67 166 67 119.0 17 157 53 158 59 105.0 18 153 58 159 55 105.5 19 163 72 151 63 117.5 20 167 76 170 80 121.5
- Related Articles
- How to create a new column with means of row values for each or some of the columns in an R data frame?
- How to replace missing values with row means in an R data frame?
- How to find the row mean for selected columns in R data frame?
- Find the percentiles for multiple columns in an R data frame.
- How to find the row mean for columns in an R data frame by ignoring missing values?
- How to find the minimum for each row based on few columns in an R data frame?
- How to find the row products for each row in an R data frame?
- How to find row minimum for an R data frame?
- Extract columns with a string in column name of an R data frame.
- How to find the difference between row values starting from bottom of an R data frame?
- Find the column name with the largest value for each row in an R data frame.
- How to calculate row means by excluding NA values in an R data frame?
- How to find the column means if some columns are categorical in R data frame?
- How to find the cumulative sum for each row in an R data frame?
- How to find the frequency table for factor columns in an R data frame?
