# Name: Kai Harley Strand-Regan
#Student no: 1801495
#Task 1

#1.0
#importing the iris table with the name 'irisData'
irisData<-read.csv("iris.csv", header=TRUE) 
class(irisData)
head(irisData)

#2.0
#initialising 
irisSetosaResults = 0 
irisVersicolorResults = 0
irisVirginicaResults = 0

# the loop selects the column and identifies the names in that column which is passed to the 
#the results for each species
for (i in 1:nrow(irisData)) 
{
  if(irisData[i, "Species"] == "Iris-setosa") irisSetosaResults = irisSetosaResults + 1
  if(irisData[i, "Species"] == "Iris-versicolor") irisVersicolorResults = irisVersicolorResults + 1
  if(irisData[i, "Species"] == "Iris-virginica") irisVirginicaResults = irisVirginicaResults + 1
}

#creating a new dataframe with the headings and data to go into the csv file
irisSummary <- data.frame("Species" = c("Iris-Setosa", "Iris-Versicolor", "Iris-Virginica"), "Total" = c(irisSetosaResults,irisVersicolorResults, irisVirginicaResults))

#irisSummary is the name of the dataframe, below is the code for writing the file
write.csv(irisSummary,"irisSummary.csv", row.names = FALSE) 

#3.0

#using the Pearson correlation 
attach(irisData)

cor.test(Sepal.length, Petal.length, method="pearson", na.rm=TRUE)

#4.0

#Scatterplot of petel vs sepal length wil a title along with x and y axis
plot(irisData$Petal.length, irisData$Sepal.length, main="Comparing the length of Petal with Sepal", xlab="Petal", ylab = "Sepal")

#5.0
#Calculating the area using a custom function 
calculateArea<-function(iWData, iLData, percent) #iWData = iris width data, iLdata = iris length data, and the percent of
#which it is *by
{
  area = (iWData * iLData) * percent
  
  return (area)
}

for (i in 1:nrow(irisData))
{
  if(irisData[i, "Species"] == "Iris-setosa")
    #nameming the new column header and applying the function
    irisData[i,]$Species.Area<-calculateArea(irisData[i,4], irisData[i,3], 0.80) #[,4] = width, [,3] = length. 
  
  if(irisData[i, "Species"] == "Iris-versicolor")  
    irisData[i,]$Species.Area<-calculateArea(irisData[i,4], irisData[i,3], 0.75)
  
  
  if(irisData[i, "Species"] == "Iris-virginica")
    irisData[i,]$Species.Area<-calculateArea(irisData[i,4], irisData[i,3], 0.65)
}
#Adding the area column to the dataframe 
write.csv(irisData, "iris.csv", row.names = FALSE) 


