1.
x <- 5
for (i in 2:20) {
x[i] <- x[i-1]*1.5-1
}
x
## [1] 5.00000 6.50000 8.75000 12.12500 17.18750 24.78125
## [7] 36.17188 53.25781 78.88672 117.33008 174.99512 261.49268
## [13] 391.23901 585.85852 877.78778 1315.68167 1972.52251 2957.78376
## [19] 4435.67564 6652.51346
2.
#a.
Disease_rate <- c(0.25, 0.83, 0.76, 0.25, 0.33, 0.51, 0.67, 0.50, 0.54, 0.75, 0.71, 0.03, 0.38, 0.64, 0.19)
Disease_chance <- c()
for (i in 1:length(Disease_rate)) {
if (Disease_rate[i] >= .5) {
Disease_chance[i] <- 1
} else {
Disease_chance[i] <- 0
}
}
print(Disease_chance)
## [1] 0 1 1 0 0 1 1 1 1 1 1 0 0 1 0
#b.
ifelse(Disease_rate >= 0.5, 1, 0)
## [1] 0 1 1 0 0 1 1 1 1 1 1 0 0 1 0
3.
library(readr)
Cars2020 <- read_csv("Downloads/Cars2020.csv")
## Rows: 110 Columns: 21
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (5): Make, Model, Type, Drive, Size
## dbl (16): LowPrice, HighPrice, CityMPG, HwyMPG, Seating, Acc030, Acc060, Qtr...
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
View(Cars2020)
Cars2020$Fuel_Efficiency <- NA
for (i in 1:nrow(Cars2020)) {
if (Cars2020$HwyMPG[i] < 20) {
Cars2020$Fuel_Efficiency[i] <- "poor"
} else if (Cars2020$HwyMPG[i] >= 20 & Cars2020$HwyMPG[i] <= 25) {
Cars2020$Fuel_Efficiency[i] <- "acceptable"
} else if (Cars2020$HwyMPG[i] > 25 & Cars2020$HwyMPG[i] <= 35) {
Cars2020$Fuel_Efficiency[i] <- "good"
} else {
Cars2020$Fuel_Efficiency[i] <- "great"
}
}
for (i in 1:nrow(Cars2020)) {
SpecificRows <- paste(Cars2020$Make, Cars2020$Model, Cars2020$Fuel_Efficiency)
}
SpecificRows
## [1] "Acura MDX good" "Acura RLX great"
## [3] "Audi A3 great" "Audi A4 great"
## [5] "Audi A6 great" "Audi A8 good"
## [7] "Audi Q3 good" "Audi TT good"
## [9] "BMW 3 Series great" "BMW 5 series great"
## [11] "BMW 7 Series good" "BMW X1 great"
## [13] "BMW Z4 great" "Buick Enclave good"
## [15] "Buick Envision good" "Buick Regal good"
## [17] "Buick Encore good" "Cadillac Escalade acceptable"
## [19] "Cadillac XT4 good" "Cadillac XT5 good"
## [21] "Cadillac XT6 good" "Chevrolet Camaro good"
## [23] "Chevrolet Corvette good" "Chevrolet Impala good"
## [25] "Chevrolet Malibu great" "Chevrolet Spark great"
## [27] "Chevrolet Suburban acceptable" "Chevrolet Tahoe acceptable"
## [29] "Chevrolet Traverse good" "Chevrolet Blazer good"
## [31] "Chrysler 300 good" "Chrysler Pacifica good"
## [33] "Dodge Durango acceptable" "Dodge Journey acceptable"
## [35] "Dodge Challenger good" "Dodge Charger good"
## [37] "Dodge Grand Caravan good" "Fiat 500L great"
## [39] "Ford Escape great" "Ford Expedition acceptable"
## [41] "Ford Explorer good" "Ford Fusion good"
## [43] "Ford Mustang good" "Ford EcoSport good"
## [45] "GMC Terrain good" "GMC Acadia good"
## [47] "GMC Yukon acceptable" "Honda Passport good"
## [49] "Honda Accord great" "Honda CR-V great"
## [51] "Honda Odyssey good" "Honda Pilot good"
## [53] "Hyundai Accent great" "Hyundai Elantra great"
## [55] "Hyundai Kona good" "Hyundai Santa Fe good"
## [57] "Hyundai Sonata great" "Hyundai Veloster great"
## [59] "Infiniti Q50 good" "Infiniti QX60 good"
## [61] "Jaguar E-Pace good" "Jaguar XF good"
## [63] "Jeep Compass good" "Jeep Grand Cherokee acceptable"
## [65] "Kia Cadenza great" "Kia Forte great"
## [67] "Kia Optima great" "Kia Rio great"
## [69] "Kia Soul good" "Land Rover Range Evoque good"
## [71] "Lexus GS good" "Lexus LS good"
## [73] "Lexus RX good" "Lincoln Aviator good"
## [75] "Lincoln Navigator acceptable" "Mazda 3 great"
## [77] "Mazda 6 great" "Mazda CX-3 great"
## [79] "Mazda CX-9 good" "Mazda Miata-MX5 great"
## [81] "Mercedes C-Class good" "Mercedes GLC good"
## [83] "Mitsubishi Mirage great" "Nissan Altima great"
## [85] "Nissan Murano good" "Nissan Pathfinder acceptable"
## [87] "Nissan Rogue good" "Nissan Sentra great"
## [89] "Nissan Versa great" "Porche 911 good"
## [91] "Porche Cayenne good" "Subaru Crosstrek great"
## [93] "Subaru Forester great" "Subaru Impreza great"
## [95] "Subaru Outback good" "Subaru Legacy great"
## [97] "Toyota Corolla great" "Toyoto 4Runner acceptable"
## [99] "Toyoto Camry great" "Toyoto Highlander good"
## [101] "Toyoto Rav4 great" "Toyoto Sequioa acceptable"
## [103] "Toyoto Sienna good" "Toyoto Yaris great"
## [105] "Volkswagon Golf great" "Volkswagon Jetta great"
## [107] "Volkswagon Passat great" "Volkswagon Tiguan good"
## [109] "Volvo S60 great" "Volvo XC90 good"
4.
Matrix_ <- matrix(0, nrow = 6, ncol = 8)
for (j in 1:ncol(Matrix_)) {
for (i in 1:nrow(Matrix_)) {
Matrix_[i, j] <- i + j
}
}
for (j in 1:ncol(Matrix_)) {
for (i in 1:nrow(Matrix_)) {
if (Matrix_[i, j] %% 2 == 1) {
Matrix_[i,j] <- i + j+ 3
}
}
}
Matrix_
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
## [1,] 2 6 4 8 6 10 8 12
## [2,] 6 4 8 6 10 8 12 10
## [3,] 4 8 6 10 8 12 10 14
## [4,] 8 6 10 8 12 10 14 12
## [5,] 6 10 8 12 10 14 12 16
## [6,] 10 8 12 10 14 12 16 14
5.
library(readr)
CourseGrades_1_ <- read_csv("Downloads/CourseGrades (1).csv")
## Rows: 14 Columns: 5
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (1): Student
## dbl (4): HW_Avg, Exam1, Exam2, FinalExam
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
View(CourseGrades_1_)
CourseGrades_1_$Average <- (CourseGrades_1_$HW_Avg * 0.35) + (CourseGrades_1_$Exam1 * 0.20) + (CourseGrades_1_$Exam2 * 0.20) + (CourseGrades_1_$FinalExam * 0.25)
CourseGrades_1_$Average
## [1] 78.2670 87.0885 91.7855 81.9770 83.1820 83.8765 86.4875 79.9460 90.7185
## [10] 86.4595 84.3285 89.5615 79.8740 74.7660
ifelse(CourseGrades_1_$Average >= 90, "A",
ifelse(CourseGrades_1_$Average >=80, "B",
ifelse(CourseGrades_1_$Average >=70, "C",
ifelse(CourseGrades_1_$Average >= 60, "D",
ifelse(CourseGrades_1_$Average < 60, "F")))))
## [1] "C" "B" "A" "B" "B" "B" "B" "C" "A" "B" "B" "B" "C" "C"
6.
Semester_GPA <- c(4.00, 3.50, 3.67, 3.33, 2.67, 3.42, 3.56)
Sum_GPA <- vector()
Cumulative_GPA <- vector()
Sum_GPA[1] <- Semester_GPA[1]
Cumulative_GPA[1] <- Semester_GPA[1]
for (i in 1:(length(Semester_GPA)-1)) {
Sum_GPA[i + 1] <- Semester_GPA[i + 1] + Sum_GPA[i]
Cumulative_GPA[i+1] <- Sum_GPA[i+1]/(i+1)
}
Cumulative_GPA
## [1] 4.000000 3.750000 3.723333 3.625000 3.434000 3.431667 3.450000
7.
Semester_GPA <- c(4.00, 3.50, 3.67, 3.33, 2.67, 3.42, 3.56)
Sum_GPA <- 0
Cumulative_GPA <- vector()
i <- 1
counter <- 0
while (i <= length(Semester_GPA)) {
Sum_GPA <- Sum_GPA + Semester_GPA[i]
Cumulative_GPA[i] <- Sum_GPA/i
if (Cumulative_GPA[i]>=3.6) {counter <- counter+1}
i <- i + 1
}
print(Cumulative_GPA)
## [1] 4.000000 3.750000 3.723333 3.625000 3.434000 3.431667 3.450000
print(Sum_GPA)
## [1] 24.15
print(counter)
## [1] 4
8.
Fibonacci <- c(0,1)
for (i in 3:40) {
Fibonacci_forty <- Fibonacci[i-1] + Fibonacci[i-2]
Fibonacci <- c(Fibonacci, Fibonacci_forty)
}
Fibonacci
## [1] 0 1 1 2 3 5 8 13
## [9] 21 34 55 89 144 233 377 610
## [17] 987 1597 2584 4181 6765 10946 17711 28657
## [25] 46368 75025 121393 196418 317811 514229 832040 1346269
## [33] 2178309 3524578 5702887 9227465 14930352 24157817 39088169 63245986
9.
Fahrenheit <- function(x) {
(9/5) * x + 32
}
Fahrenheit(0)
## [1] 32
Fahrenheit(14)
## [1] 57.2
Fahrenheit(31)
## [1] 87.8
10.
Account <- function(P, r, n, t) {
P*(1+(r/n))^(n*t)
}
Account(4500, 0.035, 12, 20)
## [1] 9052.659
11.
Vector_Values <- function(x) {
c(Mean = mean(x), Median = median(x), SD = sd(x), IQR = IQR(x), Range = range(x), quantile(x, c(.25)), quantile(x, c(.95)))
}
Vector_Values(precip)
## Mean Median SD IQR Range1 Range2 25% 95%
## 34.88571 36.60000 13.70665 13.40000 7.00000 67.00000 29.37500 55.85500
12.
XYZ <- function(x,y,z) {
if (x + y < 10) {
y*z-2
} else if (x + y >= 10 & x + y <= 15) {
x + z + 6
} else {
x*y*z
}
}
XYZ(1,6,3)
## [1] 16
XYZ(8,6,2)
## [1] 16
XYZ(10,7,9)
## [1] 630
13.
Roots <- function(a,b,c) {
x = b^2 - 4*a*c
if (x > 0) {
pos_root <- (-b + sqrt(x))/2*a
neg_root <- (-b - sqrt(x))/2*a
print(pos_root)
print(neg_root)
} else if (x == 0) {
pos_root <- (-b + sqrt(x))/2*a
print(pos_root)
} else cat("No roots")
}
Roots(5,-8.5,2.8)
## [1] 31.32782
## [1] 11.17218
Roots(-3,5,-11)
## No roots
Roots(4,-7,12.25)
## No roots