I have a bunch of datasets i need to extract data from, at first I just wrote a bunch of code and copy pasted with changed variable names once I got it working, but I have enough datasets that I need to be able to write a function to efficiently go through the data. My datasets are all in roughly the same format with some just having a few more rows, but the same column names.
Female <- c(1,3,2,5)
Male <- c(2,1,4,3)
Role <- c("Level A Junior","Level A Assistant","Level B Senior", "Level C")
df1 <- data.frame(Role,Female,Male)
Get_Percentages <- function(df){
Level_A <- df[grep("Level A", Role),]
Level_B <- df[grep("Level B", Role),]
Level_C <- df[grep("Level C", Role),]
total_A_Fem <- sum(Level_A$Female)
total_B_Fem <- sum(Level_B$Female)
total_C_Fem <- sum(Level_C$Female)
total_A_Mal <- sum(Level_A$Male)
total_B_Mal <- sum(Level_B$Male)
total_C_Mal <- sum(Level_C$Male)
totalFemByLevel <- c(total_A_Fem,total_B_Fem,total_C_Fem)
totalMalByLevel <- c(total_A_Mal,total_B_Mal,total_C_Mal)
totalByLevel <- totalFemByLevel+totalMalByLevel
percentByLevelFem <- round(totalFemByLevel / totalByLevel * 100)
percentByLevelMal <- round(totalMalByLevel / totalByLevel * 100)
}
Get_Percentages(df1)
this is my test code that isnt outputting what I want