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

Arithmetic With Matrices

The document discusses working with matrices and factors in R. It contains examples of arithmetic with matrices to estimate visitors, converting vectors to ordered and unordered factors, comparing ordered factors, and encoding variables as factors with specified levels and labels. Various factor methods like str(), summary(), and ordering comparisons are demonstrated. Finally, there are examples creating lists and data frames, subsetting data frames, and plotting relationships between variables.

Uploaded by

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

Arithmetic With Matrices

The document discusses working with matrices and factors in R. It contains examples of arithmetic with matrices to estimate visitors, converting vectors to ordered and unordered factors, comparing ordered factors, and encoding variables as factors with specified levels and labels. Various factor methods like str(), summary(), and ordering comparisons are demonstrated. Finally, there are examples creating lists and data frames, subsetting data frames, and plotting relationships between variables.

Uploaded by

Viridiana BF
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 8

Arithmetic with matrices

# Estimation of visitors
visitors <- star_wars_matrix / 5

# Print the estimate to the console


Visitors

Arithmetic with matrices (2)

# Estimated number of visitors


visitors <- star_wars_matrix / ticket_prices_matrix

# Average number of US visitors


average_us_visitors <- mean(visitors[ ,1])

# Average number of non-US visitors


average_non_us_visitors <- mean(visitors[ ,2])

May the matrix force be with you!

# Calculate the money that remains after subtracting the commission:


remaining
remaining <- star_wars_matrix - commission_rates * star_wars_matrix

# Calculate income per film: remaining_tot


remaining_tot <- rowSums(remaining)

# Calculate profit
profit <- remaining_tot Budget
Vector to factor

# Definition of hand_vector
hand_vector <- c("Right", "Left", "Left", "Right", "Left")

# Convert hand_vector to a factor: hand_factor


hand_factor <- factor(hand_vector)

# Display the structure of hand_factor


str(hand_factor)

Factor levels

# Definition of survey_vector
survey_vector <- c("R", "L", "L", "R", "R")

# Encode survey_vector as a factor with the correct names: survey_factor


survey_factor <- factor(survey_vector, levels = c("R", "L"), labels = c("Right",
"Left"))
survey_factor_2 <- factor(survey_vector, levels = c("L", "R"), labels = c("Left",
"Right")) # also possible

# Print survey_factor
survey_factor

Summarizing a factor
# Defintion of survey_vector and survey_factor
survey_vector <- c("R", "L", "L", "R", "R")
survey_factor <- factor(survey_vector, levels = c("R", "L"), labels = c("Right",
"Left"))

# Summarize survey_vector
summary(survey_vector)

# Summarize survey_factor
summary(survey_factor)

Nominal versus Ordinal, Unordered versus Ordered

# Definition of animal_vector and temperature_vector


animal_vector <- c("Elephant", "Giraffe", "Donkey", "Horse")
temperature_vector <- c("High", "Low", "High", "Low", "Medium")

# Convert animal_vector to a factor: animal_factor


animal_factor <- factor(animal_vector)

# Encode temperature_vector as a factor: temperature_factor


temperature_factor <- factor(temperature_vector, order = TRUE, levels =
c("Low", "Medium", "High"))

# Print out animal_factor and temperature_factor


animal_factor
temperature_factor
Left better than right?

# Definition of survey_vector and survey_factor


survey_vector <- c("R", "L", "L", "R", "R")
survey_factor <- factor(survey_vector, levels = c("R", "L"), labels = c("Right",
"Left"))

# First element from survey_factor: right


right <- survey_factor[1]

# Second element from survey_factor: left


left <- survey_factor[2]

# Right 'greater than' left?


right > left

Ordered factors

speed_vector <- c("OK", "Slow", "Slow", "OK", "Fast")

Ordered factors (2)

# Create speed_vector
speed_vector <- c("OK", "Slow", "Slow", "OK", "Fast")

# Convert speed_vector to ordered speed_factor


speed_factor <- factor(speed_vector, ordered = TRUE, levels= c("Slow", "OK",
"Fast"))

# Print speed_factor
speed_factor
# Summarize speed_factor
summary(speed_factor)

Comparing ordered factors

# Definition of speed_vector and speed_factor


speed_vector <- c("Fast", "Slow", "Slow", "Fast", "Ultra-fast")
factor_speed_vector <- factor(speed_vector, ordered = TRUE, levels =
c("Slow", "Fast", "Ultra-fast"))

# Compare DA2 with DA5: compare_them


compare_them <- factor_speed_vector[2] > factor_speed_vector[5]

# Print compare_them: Is DA2 faster than DA5?


compare_them

Flying high in factor space

# Prespecification of levels and labels


lvls <- c("eco", "bus", "fir")
lbls <- c("economy", "business", "first")

# Encode fly_class as a factor, with the appropriate names and ordering


fly_class_factor <- factor(fly_class, levels = lvls, ordered = TRUE, labels = lbls)
VList your skills
# Create the list lst
lst <- list(top[5], prop[,4])

# Create the list skills


skills <- list(topics = top, context = cont, properties = prop, list_info = lst)

# Display the structure of skills


str(skills)

skills 2

# Create the list key_skills


key_skills <- list(skills$topics[2],
skills$context[2],
skills$list_info[[2]][4])

RULE THE WORLD


# Convert continents to factor: continents_factor
continents_factor <- factor(continents)

# Create countries_df with the appropriate column names


countries_df <- data.frame(name = countries, cont = continents_factor,
GDP = gdp, HDI = hdi, has_president = president,
stringsAsFactors = FALSE)

# Display the structure of countries_df


str(countries_df)

RULE THE W II
# Remove economic variables and add population
countries_df_dem <- countries_df[ , c(1, 2, 5)]
countries_df_dem$population <- population

# Add brazil
names(brazil) <- c("name", "continent", "has_president", "population")
countries_df2 <- rbind(countries_df_dem, brazil)

# Sort by population
countries_df2[order(countries_df2$population, decreasing = TRUE), ]
HOW DOES BLAH BLAH
# Subset salaries: salaries_educ
salaries_educ <- salaries[salaries$degree == 3, ]

# Create a histogram of the salary column


hist(salaries_educ$salary, breaks = 10)

DOES work experience influence your salary?

# Add the exp vector as a column experience to salaries


salaries$experience <- exp

# Filter salaries: only keep degree == 3: salaries_educ


salaries_educ <- salaries[salaries$degree == 3, ]

# Create plot with many customizations


plot(salaries_educ$experience, salaries_educ$salary,
main= "Does experience matter?",
xlab= "Work experience",
ylab= "Salary",
col= "blue",
col.main = "red",
cex.axis = 1.2)

You might also like