0% found this document useful (0 votes)
24 views

R Lab Ex 1 to 5

Uploaded by

kill2king007
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views

R Lab Ex 1 to 5

Uploaded by

kill2king007
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 26

Ex: 01 R AS CALCULATOR APPLICATION

a. Using with and without R objects on console.

> 2587+2149
[1] 4736

> 2587-2149
[1] 438

> 2587*2149
[1] 5559463

> 2587/2149
[1] 1.203816

b. Using mathematical functions on console

> a=100

> class(a)

[1] "numeric"

> b=300

> class(b)

[1] "numeric"

> c=a-b

>c

[1] -200

> class(c)

[1] "numeric"

> c<a-b

[1] FALSE

>c
[1] -200

Using with R objects on console.

> x<-56

> y<-45

> x+y
[1] 101

> x-y
[1] 11

> x*y
[1] 2520

> x/y
[1] 1.244444

> y%/%x
[1] 0

> y%%x
[1] 45

> x^y
[1] 4.660808e+78

c. writes an R script, to create R objects for calculator application and save


in a specified location in disk

> z<-c(x+y)

> z<-c(x,y)

>z
[1] 56 45

> z<-c(x+y,x-y,x*y,x/y,y%/%x,y%%x,x^y)

>z
[1] 1.010000e+02 1.100000e+01 2.520000e+03 1.244444e+00 0.000000e+00

[6] 4.500000e+01 4.660808e+78

> getwd()
[1] "C:/Users/bca348/Documents"

> write.csv(z,'Ex1.csv')
> write.csv(z,'C:\\users\\bca348\\Documents')

Output:

Ex: 02 DESCRIPTIVE STATISTICS IN R


write an R script to find basic descriptive statistics using
summary ,str ,quantile function on mtcars &cars dataset
> mtcars
mpg cyl disp hp drat wt qsec vs am gear carb

Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4

Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4

Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1

Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1

Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2


Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1

Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4

Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2

Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2

Merc 280 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4

Merc 280C 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4

Merc 450SE 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3 3

Merc 450SL 17.3 8 275.8 180 3.07 3.730 17.60 0 0 3 3

Merc 450SLC 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3 3

Cadillac Fleetwood 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4

Lincoln Continental 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4

Chrysler Imperial 14.7 8 440.0 230 3.23 5.345 17.42 0 0 3 4

Fiat 128 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1

Honda Civic 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2

Toyota Corolla 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1

Toyota Corona 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1

Dodge Challenger 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2

AMC Javelin 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2

Camaro Z28 13.3 8 350.0 245 3.73 3.840 15.41 0 0 3 4

Pontiac Firebird 19.2 8 400.0 175 3.08 3.845 17.05 0 0 3 2

Fiat X1-9 27.3 4 79.0 66 4.08 1.935 18.90 1 1 4 1

Porsche 914-2 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5 2

Lotus Europa 30.4 4 95.1 113 3.77 1.513 16.90 1 1 5 2

Ford Pantera L 15.8 8 351.0 264 4.22 3.170 14.50 0 1 5 4

Ferrari Dino 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5 6

Maserati Bora 15.0 8 301.0 335 3.54 3.570 14.60 0 1 5 8

Volvo 142E 21.4 4 121.0 109 4.11 2.780 18.60 1 1 4 2


> summary(mtcars)

mpg cyl disp hp drat wt qsec vs am


gear

Min. :10.40 Min. :4.000 Min. : 71.1 Min. : 52.0 Min. :2.760 Min. :1.513 Min. :14.50
Min. :0.0000 Min. :0.0000 Min. :3.000

1st Qu.:15.43 1st Qu.:4.000 1st Qu.:120.8 1st Qu.: 96.5 1st Qu.:3.080 1st Qu.:2.581 1st
Qu.:16.89 1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:3.000

Median :19.20 Median :6.000 Median :196.3 Median :123.0 Median :3.695 Median :3.325
Median :17.71 Median :0.0000 Median :0.0000 Median :4.000

Mean :20.09 Mean :6.188 Mean :230.7 Mean :146.7 Mean :3.597 Mean :3.217 Mean
:17.85 Mean :0.4375 Mean :0.4062 Mean :3.688

3rd Qu.:22.80 3rd Qu.:8.000 3rd Qu.:326.0 3rd Qu.:180.0 3rd Qu.:3.920 3rd Qu.:3.610 3rd
Qu.:18.90 3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:4.000

Max. :33.90 Max. :8.000 Max. :472.0 Max. :335.0 Max. :4.930 Max. :5.424 Max.
:22.90 Max. :1.0000 Max. :1.0000 Max. :5.000

carb

Min. :1.000

1st Qu.:2.000

Median :2.000

Mean :2.812

3rd Qu.:4.000

Max. :8.000

> str(mtcars)

'data.frame': 32 obs. of 11 variables:

$ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...

$ cyl : num 6 6 4 6 8 6 8 4 4 6 ...

$ disp: num 160 160 108 258 360 ...

$ hp : num 110 110 93 110 175 105 245 62 95 123 ...

$ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...

$ wt : num 2.62 2.88 2.32 3.21 3.44 ...

$ qsec: num 16.5 17 18.6 19.4 17 ...


$ vs : num 0 0 1 1 0 1 0 1 1 1 ...

$ am : num 1 1 1 0 0 0 0 0 0 0 ...

$ gear: num 4 4 4 3 3 3 3 4 4 4 ...

$ carb: num 4 4 1 1 2 1 4 2 2 4 ...

> quantile(mtcars$mpg)

0% 25% 50% 75% 100%

10.400 15.425 19.200 22.800 33.900

> cars

speed dist

1 4 2

2 4 10

3 7 4

4 7 22

5 8 16

6 9 10

7 10 18

8 10 26

9 10 34

10 11 17

11 11 28

12 12 14

13 12 20

14 12 24

15 12 28

16 13 26

17 13 34

18 13 34

19 13 46
20 14 26

21 14 36

22 14 60

23 14 80

24 15 20

25 15 26

26 15 54

27 16 32

28 16 40

29 17 32

30 17 40

31 17 50

32 18 42

33 18 56

34 18 76

35 18 84

36 19 36

37 19 46

38 19 68

39 20 32

40 20 48

41 20 52

42 20 56

43 20 64

44 22 66

45 23 54

46 24 70

47 24 92
48 24 93

49 24 120

50 25 85

> summary(cars)

speed dist

Min. : 4.0 Min. : 2.00

1st Qu.:12.0 1st Qu.: 26.00

Median :15.0 Median : 36.00

Mean :15.4 Mean : 42.98

3rd Qu.:19.0 3rd Qu.: 56.00

Max. :25.0 Max. :120.00

> class(cars)

[1] "data.frame"

> dim(cars)

[1] 50 2

> str(cars)

'data.frame': 50 obs. of 2 variables:

$ speed: num 4 4 7 7 8 9 10 10 10 11 ...

$ dist : num 2 10 4 22 16 10 18 26 34 17 ...

> quantile(cars$speed)

0% 25% 50% 75% 100%

4 12 15 19 25

Ex: 03 READING AND WRITING DIFFERENT TYPES OF DATASETS

Reading different types of data sets(txt , .csv) from web and disk and
writing in file in specific disk location.
> library(utils)

> data<-read.csv("Z:\\R\\input.csv")

> data
id name Salary start_date dept

1 1 Rick 623.33 01-01-2012 IT

2 2 Dan 255.33 02-03-2013 Software

3 3 Praveen 214.30 03-09-2014 Operations

4 4 Ragavan 455.00 04-10-2007 Technology

5 NA Jagarishi 855.00 05-06-2013 IT

6 6 Anas 722.50 06-07-2017 IT

7 7 Faruk 632.00 11-11-2019 Finance

8 8 John 555.00 10-01-2012 Software

> data<-read.csv("Z:\\R\\input.csv")

> print(is.data.frame(data))

[1] TRUE

> print(ncol(data))

[1] 5

> print(nrow(data))

[1] 8

#create a data frame.

> data<-read.csv("Z:\\R\\input.csv")

#Get the max salary from data frame

> sal<-max(data$Salary)

> sal

[1] 855

> data<-read.csv("Z:\\R\\input.csv")

> sal<-max(data$Salary)

#Get the person detail having max salary

> retval<-subset(data,Salary==max(Salary))

> retval

id name Salary start_date dept


5 NA Jagarishi 855 05-06-2013 IT

> data<-read.csv("Z:\\R\\input.csv")

#Get all the peopleworking in IT department

> retval<-subset(data,dept=="IT")

> retval

id name Salary start_date dept

1 1 Rick 623.33 01-01-2012 IT

5 NA Jagarishi 855.00 05-06-2013 IT

6 6 Anas 722.50 06-07-2017 IT

> retval<-subset(data,as.Date(start_date)>as.Date("01-01-2012"))

> retval

id name Salary start_date dept

2 2 Dan 255.33 02-03-2013 Software

3 3 Praveen 214.30 03-09-2014 Operations

4 4 Ragavan 455.00 04-10-2007 Technology

5 NA Jagarishi 855.00 05-06-2013 IT

6 6 Anas 722.50 06-07-2017 IT

7 7 Faruk 632.00 11-11-2019 Finance

8 8 John 555.00 10-01-2012 Software

> data<-read.csv("Z:\\R\\input.csv")

# Write filtered data into a new file

> write.csv(retval,"Output.csv")

> newdata<-read.csv("Output.csv")

> newdata

X id name Salary start_date dept


12 2 Dan 255.33 02-03-2013 Software

2 3 3 Praveen 214.30 03-09-2014 Operations

3 4 4 Ragavan 455.00 04-10-2007 Technology


4 5 NA Jagarishi 855.00 05-06-2013 IT

56 6 Anas 722.50 06-07-2017 IT

67 7 Faruk 632.00 11-11-2019 Finance

78 8 John 555.00 10-01-2012 Software

Output:

Ex :04 VISUALIZATION

a. Find the data distributions using box and scatter plot using airquality
dataset.
> airquality

Ozone Solar.R Wind Temp Month Day

1 41 190 7.4 67 5 1

2 36 118 8.0 72 5 2

3 12 149 12.6 74 5 3

4 18 313 11.5 62 5 4

5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6

7 23 299 8.6 65 5 7

8 19 99 13.8 59 5 8

9 8 19 20.1 61 5 9

10 NA 194 8.6 69 5 10

11 7 NA 6.9 74 5 11

12 16 256 9.7 69 5 12

13 11 290 9.2 66 5 13

14 14 274 10.9 68 5 14

15 18 65 13.2 58 5 15

16 14 334 11.5 64 5 16

17 34 307 12.0 66 5 17

18 6 78 18.4 57 5 18

19 30 322 11.5 68 5 19

20 11 44 9.7 62 5 20

21 1 8 9.7 59 5 21

22 11 320 16.6 73 5 22

23 4 25 9.7 61 5 23

24 32 92 12.0 61 5 24

25 NA 66 16.6 57 5 25

26 NA 266 14.9 58 5 26

27 NA NA 8.0 57 5 27

28 23 13 12.0 67 5 28

29 45 252 14.9 81 5 29

30 115 223 5.7 79 5 30

31 37 279 7.4 76 5 31

32 NA 286 8.6 78 6 1
33 NA 287 9.7 74 6 2

34 NA 242 16.1 67 6 3

35 NA 186 9.2 84 6 4

36 NA 220 8.6 85 6 5

37 NA 264 14.3 79 6 6

38 29 127 9.7 82 6 7

39 NA 273 6.9 87 6 8

40 71 291 13.8 90 6 9

41 39 323 11.5 87 6 10

42 NA 259 10.9 93 6 11

43 NA 250 9.2 92 6 12

44 23 148 8.0 82 6 13

45 NA 332 13.8 80 6 14

46 NA 322 11.5 79 6 15

47 21 191 14.9 77 6 16

48 37 284 20.7 72 6 17

49 20 37 9.2 65 6 18

50 12 120 11.5 73 6 19

51 13 137 10.3 76 6 20

52 NA 150 6.3 77 6 21

53 NA 59 1.7 76 6 22

54 NA 91 4.6 76 6 23

55 NA 250 6.3 76 6 24

56 NA 135 8.0 75 6 25

57 NA 127 8.0 78 6 26

58 NA 47 10.3 73 6 27

59 NA 98 11.5 80 6 28
60 NA 31 14.9 77 6 29

61 NA 138 8.0 83 6 30

62 135 269 4.1 84 7 1

63 49 248 9.2 85 7 2

64 32 236 9.2 81 7 3

65 NA 101 10.9 84 7 4

66 64 175 4.6 83 7 5

67 40 314 10.9 83 7 6

68 77 276 5.1 88 7 7

69 97 267 6.3 92 7 8

70 97 272 5.7 92 7 9

71 85 175 7.4 89 7 10

72 NA 139 8.6 82 7 11

73 10 264 14.3 73 7 12

74 27 175 14.9 81 7 13

75 NA 291 14.9 91 7 14

76 7 48 14.3 80 7 15

77 48 260 6.9 81 7 16

78 35 274 10.3 82 7 17

79 61 285 6.3 84 7 18

80 79 187 5.1 87 7 19

81 63 220 11.5 85 7 20

82 16 7 6.9 74 7 21

83 NA 258 9.7 81 7 22

84 NA 295 11.5 82 7 23

85 80 294 8.6 86 7 24

86 108 223 8.0 85 7 25


87 20 81 8.6 82 7 26

88 52 82 12.0 86 7 27

89 82 213 7.4 88 7 28

90 50 275 7.4 86 7 29

91 64 253 7.4 83 7 30

92 59 254 9.2 81 7 31

93 39 83 6.9 81 8 1

94 9 24 13.8 81 8 2

95 16 77 7.4 82 8 3

96 78 NA 6.9 86 8 4

97 35 NA 7.4 85 8 5

98 66 NA 4.6 87 8 6

99 122 255 4.0 89 8 7

100 89 229 10.3 90 8 8

101 110 207 8.0 90 8 9

102 NA 222 8.6 92 8 10

103 NA 137 11.5 86 8 11

104 44 192 11.5 86 8 12

105 28 273 11.5 82 8 13

106 65 157 9.7 80 8 14

107 NA 64 11.5 79 8 15

108 22 71 10.3 77 8 16

109 59 51 6.3 79 8 17

110 23 115 7.4 76 8 18

111 31 244 10.9 78 8 19

112 44 190 10.3 78 8 20

113 21 259 15.5 77 8 21


114 9 36 14.3 72 8 22

115 NA 255 12.6 75 8 23

116 45 212 9.7 79 8 24

117 168 238 3.4 81 8 25

118 73 215 8.0 86 8 26

119 NA 153 5.7 88 8 27

120 76 203 9.7 97 8 28

121 118 225 2.3 94 8 29

122 84 237 6.3 96 8 30

123 85 188 6.3 94 8 31

124 96 167 6.9 91 9 1

125 78 197 5.1 92 9 2

126 73 183 2.8 93 9 3

127 91 189 4.6 93 9 4

128 47 95 7.4 87 9 5

129 32 92 15.5 84 9 6

130 20 252 10.9 80 9 7

131 23 220 10.3 78 9 8

132 21 230 10.9 75 9 9

133 24 259 9.7 73 9 10

134 44 236 14.9 81 9 11

135 21 259 15.5 76 9 12

136 28 238 6.3 77 9 13

137 9 24 10.9 71 9 14

138 13 112 11.5 71 9 15

139 46 237 6.9 78 9 16

140 18 224 13.8 67 9 17


141 13 27 10.3 76 9 18

142 24 238 10.3 68 9 19

143 16 201 8.0 82 9 20

144 13 238 12.6 64 9 21

145 23 14 9.2 71 9 22

146 36 139 10.3 81 9 23

147 7 49 10.3 69 9 24

148 14 20 16.6 63 9 25

149 30 193 6.9 70 9 26

150 NA 145 13.2 77 9 27

151 14 191 14.3 75 9 28

152 18 131 8.0 76 9 29

153 20 223 11.5 68 9 30

> data(airquality)

> boxplot(airquality$Wind, main="Average wind speed\

+ at La Guardia Airport",

+ xlab="Miles per hour",

+ ylab="Wind",

+ col="orange",

+ border="brown",

+ horizontal=TRUE, notch=TRUE)
> boxplot(airquality[,0:4],

+ main='Box plots for Air Quality Parameters')


> plot(airquality$Ozone, airquality$Month,

+ main="Scatterplot Example",

+ xlab="Ozone cocnetration in parts per billion",

+ ylab="Month of observation",pch=19)
b. Plot the histogram ,bar chart and pie chart on sample data
> barplot(airquality$Ozone,
+ main='Ozone Concentration in air',
+ xlab='Ozone levels',horiz=TRUE)
> barplot(airquality$Ozone, main='Ozone concentration in air',
+ xlab='ozone levels', col='blue', horiz=FALSE)
> hist(airquality$Temp, main="La Guardia Airport's\
+ Maximum Temperature(Daily)",
+ xlab="Temperature(Fahrenheit)",
+ xlim=c(50,125),col="yellow",
+ freq=TRUE)
> library(graphics)
> x<-c(135,350,20.4,45)
> labels<-c("Ozone", "Solar.R", "Wind", "Temp")
> pie(x,labels)
Ex: 05 PROBLEM DEFINITION
a. Correlations

#Data vectors

> x<-c(1,3,5,10)

> y<-c(2,4,6,20)

#Print correlation using different methods

> print(cor(x,y))

[1] 0.9724702

> print(cor(x,y,method="pearson"))

[1] 0.9724702

> print(cor(x,y,method="kendall"))

[1] 1

> print(cor(x,y,method="spearman"))

[1] 1

b. Covariance

#Data Vectors

> x<-c(1,3,5,10)

> y<-c(2,4,6,20)

#Print covariance using different methods

> print(cov(x,y))

[1] 30.66667

> print(cov(x,y,method="pearson"))

[1] 30.66667

> print(cov(x,y,method="kendall"))

[1] 12

> print(cov(x,y,method="spearman"))

[1] 1.666667
c. Conversion of Covariance to Correlation in R

#Data Vectors

> x<-rnorm(2)

> y<-rnorm(2)

#Binding into square matrix

> mat<-cbind(x,y)

#Defining x as the covariance matrix

> x<-cov(mat)

#Print covariance matrix

> print(x)

x y

x 0.6974460 -0.3465384

y -0.3465384 0.1721837

#Print correlation matrix of data

> print(cor(mat))

x y

x 1 -1

y -1 1

#Using function cov2cor()

#To convert covariance matrix to correlation matrix

> print(cov2cor(x))

x y

x 1 -1

y -1 1

You might also like