Skip to main content

Week 5: Matrix Operations and a bit of Data Manipulation

 Week 5: Matrix Operations and a bit of Data Manipulation 





Objective

This week’s assignment focused on matrix operations, specifically finding the inverse and determinant of matrices. Additionally, I explored some data manipulation techniques, which I will summarize below.


Part 1: Matrix Operations

Matrix Creation

I created two matrices:

  • Matrix A: A 10x10 matrix containing values from 1 to 100.
  • Matrix B: A 10x100 matrix containing values from 1 to 1000.

Determinant and Inverse of Matrix A

  • The determinant of Matrix A was found to be 0, indicating that it is singular and does not have an inverse.
  • Matrix B is non-square (10x100), so it cannot have a determinant or an inverse.



Error Handling

When attempting to compute the inverse of Matrix A using the solve() function, R returned an error indicating that the matrix is singular.

This message means that the matrix does not have an inverse because its determinant is zero, confirming its singularity.

Similarly, for Matrix B, R returned a different error when I tried to calculate the determinant, stating that the matrix is not square

This highlights that only square matrices can have determinants and inverses, which are fundamental properties in linear algebra.



Key Learnings

  • Determinants are critical for assessing whether a matrix is invertible.
  • A determinant of 0 signifies a singular matrix, which means it lacks an inverse.
  • Non-square matrices do not possess determinants or inverses.


Part 2: Summary of Data Manipulation

In addition to matrix operations, I worked with the heights dataset using functions from the data.table and dplyrpackages. Here are some of the techniques I applied:

  • Filtering: Extracting subsets of data based on specific conditions.
  • Summarizing: Calculating means, counts, and other summary statistics.
  • Creating New Columns: Adding derived variables to the dataset.

For a more detailed exploration of the data manipulation techniques and code examples, you can find everything in my GitHub repository.





Comments

Popular posts from this blog

DNA Sequence Alignment and Visualization with "SequenceAlignment" Package

 DNA Sequence Alignment and Visualization with "SequenceAlignment" Package In bioinformatics, sequence alignment plays a crucial role in comparing biological sequences, especially DNA sequences. It helps in identifying similarities, differences, and evolutionary relationships between sequences. In this blog, we’ll explore how to use the SequenceAlignment R package for performing sequence alignments, visualizing the results with plots like barplots and heatmaps , and analyzing DNA sequences against multiple reference sequences stored in FASTA files. What is Sequence Alignment? Sequence alignment is the process of comparing two or more biological sequences (e.g., DNA, RNA, or proteins) to identify regions of similarity or difference. In DNA sequence alignment, the sequences are compared to see how closely they match, which can provide insights into genetic similarities, mutations, or evolutionary trends. The SequenceAlignment Package The SequenceAlignment package is a powerf...

Journey Through R Programming: Week 1

  Journey Through R Programming: Week 1 Introduction Welcome to my blog! As part of my Open Source R course with Professor Alon Friedman at the University of South Florida, I’m excited to document my weekly progress in learning R programming. A bit about me: I’m currently pursuing a Master’s in Bioinformatics & Computational Biology, following an undergrad in Biotechnology. My programming journey began with Python through the “100 Days of Code: The Complete Python Pro Bootcamp” on Udemy, which included around 8 mini projects. This experience has made transitioning to R a bit smoother, as many concepts overlap. To support my learning, I’m using the book  The Art of R Programming  and the edX course  Data Science: R Basics  from Harvard University. These resources have been invaluable in deepening my understanding of R. Summary 1. Function Creation Objective: Create a function to count the number of odd numbers in a vector. Code: What I Learned: The modulus op...

Week 9 : Exploring Cancer Survival Data Visualization in R

 Week 9 : Exploring Cancer Survival Data Visualization in R In this Assignment, I explored ways to visualize cancer survival data across different organs using a variety of R plotting methods, including base R’s   barplot() ,   ggplot2 , and an   xyplot()   with   lattice . Here’s a breakdown of the journey, the challenges faced, and what I learned along the way. The Data: Mean Survival Time by Organ The dataset I worked with contains information on the survival times across different organs from cancer . To understand the average survival time for each organ, I first calculated the mean survival time by using the following code: Once I had the mean survival times, I set out to visualize the data using four different approaches, each with its unique set of functionalities and aesthetics. 1. Basic Bar Plot with Base R My first plot used a simple   barplot()   to display the mean survival times. This method provided a quick and straightforward way t...