Chapter 1 Charts

This repository offers a comprehensive collection of useful charts and visualizations created using R.

1.0.1 Example 1: Scatter Plot

library(ggplot2)

# ggplot2

ggplot(mtcars, aes(x = wt, y = mpg)) +
  geom_point() +
  ggtitle("Scatter Plot (ggplot2)") +
  xlab("Weight") +
  ylab("Miles per Gallon")

1.0.2 Example 2: Line Plot

#Line Plot without package
plot(1:10, 1:10, type = "l", main = "Line Plot (Base R)", xlab = "X", ylab = "Y")

#Line Plot with package ggplot2
ggplot(data.frame(x = 1:10, y = 1:10), aes(x = x, y = y)) +
  geom_line() +
  ggtitle("Line Plot (ggplot2)") +
  xlab("X") +
  ylab("Y")

1.0.3 Example 3: Bar Plot

#Bar Plot without package
data <- table(iris$Species)
barplot(data, main = "Bar Plot (Base R)", xlab = "Species", ylab = "Count")

#Bar Plot with package ggplot2
 
ggplot(data.frame(Species = levels(iris$Species)), aes(x = Species)) +
  geom_bar() +
  ggtitle("Species Counts") +
  xlab("Species") +
  ylab("Count")

1.0.4 Example 4: Histogram

#Histogram without package
hist(mtcars$mpg, main = "Histogram (Base R)", xlab = "Miles per Gallon", ylab = "Frequency" )

#Histogram with package ggplot2
ggplot(mtcars, aes(x = mpg)) +
  geom_histogram(binwidth = 2, fill = "blue", color = "black") +
  ggtitle("Histogram (ggplot2)") +
  xlab("Miles per Gallon") +
  ylab("Frequency")

1.0.5 Example 5: Box Plot

#Box Plot without package
boxplot(mtcars$mpg, main = "Box Plot (Base R)")

#Box Plot with package ggplot2
ggplot(mtcars, aes(y = mpg)) +
  geom_boxplot() +
  ggtitle("Box Plot (ggplot2)") +
  ylab("Miles per Gallon")

1.0.6 Example 6: Violin Plot

#Violin Plot with package ggplot2
ggplot(iris, aes(x = Species, y = Sepal.Length, fill = Species)) +
  geom_violin() +
  ggtitle("Violin Plot (ggplot2)") +
  xlab("Species") +
  ylab("Sepal Length")

1.0.7 Example 7: Heatmap (pheatmap)

# Install and load the pheatmap package (if not already installed)
#install.packages("pheatmap")

library(pheatmap)
## Warning: package 'pheatmap' was built under R version 4.3.3
# Compute the correlation matrix for mtcars
correlation_matrix <- cor(mtcars)

# Create a heatmap
pheatmap(correlation_matrix,
         color = colorRampPalette(c("blue", "white", "red"))(100),
         main = "Heatmap of mtcars",
         cluster_rows = FALSE, cluster_cols = FALSE,
         fontsize = 10) # Adjust font size

1.0.8 Example 8: Time Series Plot (Base R)

data("AirPassengers")
ts_plot <- ts(AirPassengers, start = c(1949, 1), frequency = 12)
plot(ts_plot, main = "Time Series Plot (Base R)", xlab = "Year", ylab = "Passengers")

1.0.9 Example 9: 3D Scatter Plot (scatterplot3d)

library(scatterplot3d)
scatterplot3d(mtcars$mpg, mtcars$hp, mtcars$wt, main = "3D Scatter Plot (scatterplot3d)",
              xlab = "MPG", ylab = "Horsepower", zlab = "Weight", color = "blue")

1.0.10 Example 10: Pie Chart (Base R)

#Pie Chart without package
data <- table(iris$Species)
pie(data, main = "Pie Chart (Base R)")

1.0.11 Example 11: Radar Chart (fmsb)

library(fmsb) # Load the necessary library
## Warning: package 'fmsb' was built under R version 4.3.3
data <- scale(iris[, 1:4]) # Select the first four columns of the iris dataset and scale them
data <- data.frame(data, Species = iris$Species) # Create a data frame with row names as species

radarchart(data, axistype = 1, title = "Radar Chart (fmsb)") # Create a radar chart
## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(left, right): '-' not meaningful for factors

## Warning in Ops.factor(left, right): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[i, j], df[2, j]): '-' not meaningful for factors
## Warning in Ops.factor(df[1, j], df[2, j]): '-' not meaningful for factors

1.0.12 Example 12: Density Plot (ggplot2)

ggplot(iris, aes(x = Sepal.Length, fill = Species)) +
  geom_density(alpha = 0.5) +
  ggtitle("Density Plot (ggplot2)") +
  xlab("Sepal Length") +
  ylab("Density")

1.0.13 Example 13: Bar Chart with Error Bars (ggplot2)

set.seed(123)
x <- 1:10
y <- x + rnorm(length(x))
error <- runif(length(x), 0.1, 0.3)
df <- data.frame(x, y, error)
ggplot(df, aes(x = x, y = y)) +
  geom_bar(stat = "identity") +
  geom_errorbar(aes(ymin = y - error, ymax = y + error), width = 0.2) +
  ggtitle("Bar Chart with Error Bars (ggplot2)") +
  xlab("X") +
  ylab("Y")

1.0.14 Example 14: Parallel Coordinate Plot (ggplot2)

ggplot(iris, aes(x = Species, y = Sepal.Length, color = Species)) +
  geom_path() +  # Use geom_path for parallel coordinates
  ggtitle("Parallel Coordinates Plot (ggplot2)") +
  xlab("Species") +
  ylab("Sepal Length")

1.0.15 Example 15: Sunburst Chart (plotly)

library(plotly)
## Warning: package 'plotly' was built under R version 4.3.3
## 
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
## 
##     last_plot
## The following object is masked from 'package:stats':
## 
##     filter
## The following object is masked from 'package:graphics':
## 
##     layout
data <- data.frame(
  id = c("A", "B", "C", "D", "E", "F"),
  parent = c("", "", "", "A", "A", "D"),
  value = c(10, 14, 12, 6, 8, 4)
)
fig <- plot_ly(data, ids = ~id, labels = ~id, parents = ~parent, values = ~value,
               type = 'sunburst')
fig <- fig %>% layout(title = "Sunburst Chart (plotly)")
fig

1.0.16 Example 16: Mosaic Plot (mosaic)

# Load the mosaic package
library(mosaic)
## Warning: package 'mosaic' was built under R version 4.3.3
## Registered S3 method overwritten by 'mosaic':
##   method                           from   
##   fortify.SpatialPolygonsDataFrame ggplot2
## 
## The 'mosaic' package masks several functions from core packages in order to add 
## additional features.  The original behavior of these functions should not be affected by this.
## 
## Attaching package: 'mosaic'
## The following objects are masked from 'package:dplyr':
## 
##     count, do, tally
## The following object is masked from 'package:Matrix':
## 
##     mean
## The following object is masked from 'package:plotly':
## 
##     do
## The following object is masked from 'package:ggplot2':
## 
##     stat
## The following objects are masked from 'package:stats':
## 
##     binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
##     quantile, sd, t.test, var
## The following objects are masked from 'package:base':
## 
##     max, mean, min, prod, range, sample, sum
library(vcd)
## Warning: package 'vcd' was built under R version 4.3.3
## Loading required package: grid
## 
## Attaching package: 'vcd'
## The following object is masked from 'package:mosaic':
## 
##     mplot
## The following object is masked from 'package:fmsb':
## 
##     oddsratio
# Load the Arthritis dataset
data("Arthritis")

# Create a mosaic plot
mosaic(~ Improved + Treatment, data = Arthritis,
       main = "Mosaic Plot (Arthritis)")

1.0.17 Example 17: Word Cloud (wordcloud2)

library(wordcloud2)
## Warning: package 'wordcloud2' was built under R version 4.3.3
# Create a sample word frequency data frame
wordcloud_data <- data.frame(
  word = c("crime1", "crime2", "crime3", "crime4", "crime5"),
  freq = c(20, 15, 10, 5, 3)
)

# Create a word cloud
wordcloud2(wordcloud_data, size = 0.5,
           color = "random-dark", backgroundColor = "black")

1.0.18 Example 18: Hexbin Plot (hexbinplot)

library(hexbin)
## Warning: package 'hexbin' was built under R version 4.3.3
data("iris")
hexbinplot(Petal.Length ~ Petal.Width | Species, data = iris,
           xlab = "Petal Width", ylab = "Petal Length",
           main = "Hexbin Plot (hexbinplot)")

1.0.19 Example 19: Ternary Plot (vcd)

library(vcd)

# Create a sample matrix with 3 columns
# Replace this with your own data
ternary_data <- matrix(runif(300), ncol = 3)
# Create a ternary plot
ternaryplot(ternary_data,
            main = "Ternary Plot (vcd)")

1.0.20 Example 20: Candlestick Chart (quantmod)

# Install and load the required package
library(quantmod)
## Warning: package 'quantmod' was built under R version 4.3.3
## Loading required package: xts
## Warning: package 'xts' was built under R version 4.3.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.3.3
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## 
## ######################### Warning from 'xts' package ##########################
## #                                                                             #
## # The dplyr lag() function breaks how base R's lag() function is supposed to  #
## # work, which breaks lag(my_xts). Calls to lag(my_xts) that you type or       #
## # source() into this session won't work correctly.                            #
## #                                                                             #
## # Use stats::lag() to make sure you're not using dplyr::lag(), or you can add #
## # conflictRules('dplyr', exclude = 'lag') to your .Rprofile to stop           #
## # dplyr from breaking base R's lag() function.                                #
## #                                                                             #
## # Code in packages is not affected. It's protected by R's namespace mechanism #
## # Set `options(xts.warn_dplyr_breaks_lag = FALSE)` to suppress this warning.  #
## #                                                                             #
## ###############################################################################
## 
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
## 
##     first, last
## Loading required package: TTR
## Warning: package 'TTR' was built under R version 4.3.3
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
# Get stock price data for AAPL (Apple Inc.) from Yahoo Finance
getSymbols("AAPL", src = "yahoo", from = "2022-01-01", to = "2022-12-31")
## [1] "AAPL"
# Create a candlestick chart
chartSeries(AAPL, type = "candlesticks", theme = "white",
            name = "Apple Inc. (AAPL) Stock Prices",
            subset = "2022-01-01::2022-12-31")

1.0.21 Example 21: Wind Rose Plot (openair)

#Install the required dependencies
library(maps)
## Warning: package 'maps' was built under R version 4.3.3
library(openair)
## Warning: package 'openair' was built under R version 4.3.3
# Set a seed for reproducibility
set.seed(123)

# Generate random wind direction (0 to 360 degrees) and wind speed data
directions <- runif(100, 0, 360)
speeds <- runif(100, 0, 10)

# Create a data frame with wind data
wind_data <- data.frame(direction = directions, speed = speeds)

# Create a wind rose plot
windRose(mydata = wind_data,
         ws = "speed", wd = "direction",
         key.header = "Wind Rose Plot (openair)")

1.0.22 Example 22: Sunflower Plot (graphics)

set.seed(123)
x <- rnorm(100)
y <- rnorm(100)
sunflowerplot(x, y, main = "Sunflower Plot (graphics)")

1.0.23 Example 23: Cluster Dendrogram (dendextend)

library(dendextend)
## Warning: package 'dendextend' was built under R version 4.3.3
## 
## ---------------------
## Welcome to dendextend version 1.17.1
## Type citation('dendextend') for how to cite the package.
## 
## Type browseVignettes(package = 'dendextend') for the package vignette.
## The github page is: https://github.com/talgalili/dendextend/
## 
## Suggestions and bug-reports can be submitted at: https://github.com/talgalili/dendextend/issues
## You may ask questions at stackoverflow, use the r and dendextend tags: 
##   https://stackoverflow.com/questions/tagged/dendextend
## 
##  To suppress this message use:  suppressPackageStartupMessages(library(dendextend))
## ---------------------
## 
## Attaching package: 'dendextend'
## The following object is masked from 'package:mosaic':
## 
##     shuffle
## The following object is masked from 'package:stats':
## 
##     cutree
data("mtcars")
dend <- as.dendrogram(hclust(dist(mtcars)))
dend <- color_branches(dend, k = 3)
plot(dend, main = "Cluster Dendrogram (dendextend)")

1.0.24 Example 24: Network Plot (igraph)

library(igraph)
## Warning: package 'igraph' was built under R version 4.3.3
## 
## Attaching package: 'igraph'
## The following object is masked from 'package:mosaic':
## 
##     compare
## The following objects are masked from 'package:dplyr':
## 
##     as_data_frame, groups, union
## The following object is masked from 'package:plotly':
## 
##     groups
## The following objects are masked from 'package:stats':
## 
##     decompose, spectrum
## The following object is masked from 'package:base':
## 
##     union
set.seed(123)
nodes <- data.frame(name = letters[1:10])
edges <- data.frame(
  from = sample(nodes$name, 20, replace = TRUE),
  to = sample(nodes$name, 20, replace = TRUE)
)
g <- graph_from_data_frame(d = edges, vertices = nodes)
plot(g, layout = layout_with_kk(g), vertex.label = nodes$name, main = "Network Plot (igraph)")

1.0.25 Example 25: Radial Plot (circlize)

# Load the circlize package
library(circlize)
## Warning: package 'circlize' was built under R version 4.3.3
## ========================================
## circlize version 0.4.16
## CRAN page: https://cran.r-project.org/package=circlize
## Github page: https://github.com/jokergoo/circlize
## Documentation: https://jokergoo.github.io/circlize_book/book/
## 
## If you use it in published research, please cite:
## Gu, Z. circlize implements and enhances circular visualization
##   in R. Bioinformatics 2014.
## 
## This message can be suppressed by:
##   suppressPackageStartupMessages(library(circlize))
## ========================================
## 
## Attaching package: 'circlize'
## The following object is masked from 'package:igraph':
## 
##     degree
# Load the mtcars dataset
data("mtcars")

# Compute the correlation matrix
cor_matrix <- cor(mtcars)

# Set row names to match column names
rownames(cor_matrix) <- colnames(cor_matrix)

# Create a chord diagram
chordDiagram(cor_matrix, transparency = 0.5, annotationTrack = "grid",
             preAllocateTracks = 1)

# Add a title to the plot
title(main = "Radial Plot (circlize)")

#----------- before this line self learning

1.0.26 Example 26: Mosaic Plot (vcd)

library(vcd)
data("Arthritis")
mosaic(~ Improved + Treatment, data = Arthritis, shade = TRUE,
       main = "Mosaic Plot (vcd)")

1.0.27 Example 27: Star Plot (fmsb)

# Install and load the 'fmsb' package
#install.packages("fmsb")
library(fmsb)

# Load the 'mtcars' dataset
data("mtcars")

# Create a binary variable 'mpg01' based on median
mtcars$mpg01 <- ifelse(mtcars$mpg > median(mtcars$mpg), "high", "low")

# Create a star plot (radar chart)
radarchart(mtcars[, 1:7], title = "Star Plot (fmsb)")

1.0.28 Example 28: Beeswarm Plot (ggbeeswarm)

# Install and load the 'ggbeeswarm' package
#install.packages("ggbeeswarm")
library(ggbeeswarm)
## Warning: package 'ggbeeswarm' was built under R version 4.3.3
# Load the 'mtcars' dataset
data("mtcars")

# Create a beeswarm plot
ggplot(mtcars, aes(x = factor(cyl), y = mpg)) +
  geom_beeswarm() +
  ggtitle("Beeswarm Plot (ggbeeswarm)") +
  xlab("Cylinders") +
  ylab("Miles per Gallon")

1.0.29 Example 29: QQ Plot (base R)

qqnorm(rnorm(100), main = "QQ Plot (base R)")
qqline(rnorm(100))

1.0.30 Example 30: Parallel Coordinates Plot (ggplot2)

library(ggplot2)
data("iris")
ggplot(iris, aes(x = Species, y = Sepal.Length, color = Species)) +
  geom_path() +
  ggtitle("Parallel Coordinates Plot (ggplot2)") +
  xlab("Species") +
  ylab("Sepal Length")

1.0.31 Example 31: Venn Diagram (VennDiagram)

library(VennDiagram)
## Warning: package 'VennDiagram' was built under R version 4.3.3
## Loading required package: futile.logger
## Warning: package 'futile.logger' was built under R version 4.3.3
## 
## Attaching package: 'VennDiagram'
## The following object is masked from 'package:dendextend':
## 
##     rotate
venn.plot <- venn.diagram(
  x = list(A = 1:100, B = 51:150, C = 101:200),
  category.names = c("A", "B", "C"),
  filename = NULL
)
grid.draw(venn.plot)

1.0.32 Example 32: Surface Plot (plotly)

library(plotly)
x <- seq(-10, 10, length = 100)
y <- seq(-10, 10, length = 100)
z <- outer(x, y, function(x, y) sin(sqrt(x^2 + y^2)) / sqrt(x^2 + y^2))
plot_ly(z = ~z, type = "surface") %>% layout(title = "Surface Plot (plotly)")

1.0.33 Example 33: Contour Plot (base R)

x <- seq(-2 * pi, 2 * pi, length = 100)
y <- seq(-2 * pi, 2 * pi, length = 100)
f <- function(x, y) cos(x) * sin(y)
z <- outer(x, y, f)
contour(x, y, z, main = "Contour Plot (base R)", xlab = "X", ylab = "Y")