#Question 1
dataframe<-read.csv(file='marks1.csv', header = TRUE, sep=',')

#Question 2
typeof(dataframe)
## [1] "list"
class(dataframe)
## [1] "data.frame"
View(dataframe)
summary(dataframe)
##        X             X.1                 test            asgn      
##  Min.   :60001   Length:11          Min.   :12.00   Min.   :10.00  
##  1st Qu.:60007   Class :character   1st Qu.:17.00   1st Qu.:13.00  
##  Median :60011   Mode  :character   Median :21.00   Median :14.00  
##  Mean   :60013                      Mean   :21.45   Mean   :13.55  
##  3rd Qu.:60019                      3rd Qu.:25.50   3rd Qu.:15.00  
##  Max.   :60026                      Max.   :30.00   Max.   :15.00  
##      Prsnt           Final             q1              q2       
##  Min.   :12.00   Min.   :12.00   Min.   :0.000   Min.   :3.000  
##  1st Qu.:17.00   1st Qu.:17.00   1st Qu.:2.000   1st Qu.:5.000  
##  Median :18.00   Median :22.00   Median :3.000   Median :5.000  
##  Mean   :17.45   Mean   :20.18   Mean   :3.136   Mean   :5.818  
##  3rd Qu.:19.00   3rd Qu.:23.00   3rd Qu.:4.000   3rd Qu.:7.000  
##  Max.   :19.00   Max.   :28.00   Max.   :6.000   Max.   :9.000  
##        q3              q4        
##  Min.   :1.000   Min.   : 4.000  
##  1st Qu.:4.000   1st Qu.: 5.000  
##  Median :5.000   Median : 6.000  
##  Mean   :5.091   Mean   : 6.409  
##  3rd Qu.:6.500   3rd Qu.: 7.750  
##  Max.   :9.000   Max.   :10.000
#Question 3
names(dataframe)
##  [1] "X"     "X.1"   "test"  "asgn"  "Prsnt" "Final" "q1"    "q2"    "q3"   
## [10] "q4"
#Question 4
names(dataframe)[names(dataframe)=='X']<-'Id'
dataframe
##       Id    X.1 test asgn Prsnt Final  q1 q2 q3   q4
## 1  60001  Ahmad   15   14    17    13 0.0  9  2  4.0
## 2  60003    Abu   26   13    18    22 3.0  5  8  6.0
## 3  60006   Samy   21   15    19    25 6.0  7  4  8.0
## 4  60008  Chong   25   10    17    14 2.0  3  4  5.0
## 5  60009   Paul   25   15    16    20 3.0  7  6  4.0
## 6  60011   John   18   15    19    22 4.0  7  4  7.0
## 7  60014   Devi   30   15    19    28 4.0  5  9 10.0
## 8  60015 Pillip   16   15    19    20 4.0  5  6  5.0
## 9  60023 Meilin   18   13    18    22 2.0  5  7  8.0
## 10 60025   Lily   30   14    18    24 5.5  6  5  7.5
## 11 60026  Jamil   12   10    12    12 1.0  5  1  6.0
#Question 5
colnames(dataframe)[2]<-'StuName'
dataframe
##       Id StuName test asgn Prsnt Final  q1 q2 q3   q4
## 1  60001   Ahmad   15   14    17    13 0.0  9  2  4.0
## 2  60003     Abu   26   13    18    22 3.0  5  8  6.0
## 3  60006    Samy   21   15    19    25 6.0  7  4  8.0
## 4  60008   Chong   25   10    17    14 2.0  3  4  5.0
## 5  60009    Paul   25   15    16    20 3.0  7  6  4.0
## 6  60011    John   18   15    19    22 4.0  7  4  7.0
## 7  60014    Devi   30   15    19    28 4.0  5  9 10.0
## 8  60015  Pillip   16   15    19    20 4.0  5  6  5.0
## 9  60023  Meilin   18   13    18    22 2.0  5  7  8.0
## 10 60025    Lily   30   14    18    24 5.5  6  5  7.5
## 11 60026   Jamil   12   10    12    12 1.0  5  1  6.0
#Question 6
dataframe$id<-dataframe$StuName<-NULL
dataframe
##       Id test asgn Prsnt Final  q1 q2 q3   q4
## 1  60001   15   14    17    13 0.0  9  2  4.0
## 2  60003   26   13    18    22 3.0  5  8  6.0
## 3  60006   21   15    19    25 6.0  7  4  8.0
## 4  60008   25   10    17    14 2.0  3  4  5.0
## 5  60009   25   15    16    20 3.0  7  6  4.0
## 6  60011   18   15    19    22 4.0  7  4  7.0
## 7  60014   30   15    19    28 4.0  5  9 10.0
## 8  60015   16   15    19    20 4.0  5  6  5.0
## 9  60023   18   13    18    22 2.0  5  7  8.0
## 10 60025   30   14    18    24 5.5  6  5  7.5
## 11 60026   12   10    12    12 1.0  5  1  6.0
#Question 7
dataframe$Total<-apply(dataframe[,c(3:8)],1, function(x) sum(x))
dataframe
##       Id test asgn Prsnt Final  q1 q2 q3   q4 Total
## 1  60001   15   14    17    13 0.0  9  2  4.0  55.0
## 2  60003   26   13    18    22 3.0  5  8  6.0  69.0
## 3  60006   21   15    19    25 6.0  7  4  8.0  76.0
## 4  60008   25   10    17    14 2.0  3  4  5.0  50.0
## 5  60009   25   15    16    20 3.0  7  6  4.0  67.0
## 6  60011   18   15    19    22 4.0  7  4  7.0  71.0
## 7  60014   30   15    19    28 4.0  5  9 10.0  80.0
## 8  60015   16   15    19    20 4.0  5  6  5.0  69.0
## 9  60023   18   13    18    22 2.0  5  7  8.0  67.0
## 10 60025   30   14    18    24 5.5  6  5  7.5  72.5
## 11 60026   12   10    12    12 1.0  5  1  6.0  41.0
#Qustion 8
dataframe$cw<-apply(dataframe[, c(3:9)], 1, function(x) {x[1]+x[2]+x[3]})
dataframe
##       Id test asgn Prsnt Final  q1 q2 q3   q4 Total cw
## 1  60001   15   14    17    13 0.0  9  2  4.0  55.0 44
## 2  60003   26   13    18    22 3.0  5  8  6.0  69.0 53
## 3  60006   21   15    19    25 6.0  7  4  8.0  76.0 59
## 4  60008   25   10    17    14 2.0  3  4  5.0  50.0 41
## 5  60009   25   15    16    20 3.0  7  6  4.0  67.0 51
## 6  60011   18   15    19    22 4.0  7  4  7.0  71.0 56
## 7  60014   30   15    19    28 4.0  5  9 10.0  80.0 62
## 8  60015   16   15    19    20 4.0  5  6  5.0  69.0 54
## 9  60023   18   13    18    22 2.0  5  7  8.0  67.0 53
## 10 60025   30   14    18    24 5.5  6  5  7.5  72.5 56
## 11 60026   12   10    12    12 1.0  5  1  6.0  41.0 34