# The intricacies of data frames in R, an essential structure for organizing and analyzing data. I started by creating an empty data frame and then moved on to constructing data frames with both numeric and character columns. This exercise helped me appreciate the versatility of data frames in handling different data types within the same structure.
#
# I then examined how to check the dimensions of a data frame using functions like nrow(), ncol(), and dim(). Understanding these basics is crucial when managing and manipulating datasets of varying sizes.
#
# Next, I explored the process of converting matrices to data frames using as.data.frame(). This conversion is particularly useful when working with matrix data that requires more flexible column types.
#
# Subsetting rows and columns in data frames was another key area of focus. I experimented with various methods, including numeric and logical indexing, as well as using column and row names. I found the ability to subset data using logical conditions especially powerful for filtering rows based on specific criteria.
#
# Additionally, I practiced using subset(), transform(), and within() functions to manipulate data frames more efficiently. These functions provided a cleaner and more readable syntax for subsetting, transforming, and modifying columns within data frames.
#
# Finally, I delved into converting all columns in a data frame to character class and selectively converting only factor columns to characters. This conversion is particularly useful when preparing data for merging or exporting to databases, where character consistency can prevent potential issues.
# Create an empty data.frame
structure(list(character()), class = "data.frame")
## NULL
## <0 rows> (or 0-length row.names)
# Create a data.frame with three rows and two columns
structure(list(x = 10:12, y = letters[10:12]), class = "data.frame", row.names = 1:3)
## x y
## 1 10 j
## 2 11 k
## 3 12 l
# Check dimensions of a data.frame
df <- structure(list(x = numeric(3), y = character(3)), class = "data.frame", row.names = 1:3)
nrow(df)
## [1] 3
ncol(df)
## [1] 2
dim(df)
## [1] 3 2
# Create a data.frame using data.frame() function
str(data.frame("column_1" = numeric(3), "column_2" = character(3)))
## 'data.frame': 3 obs. of 2 variables:
## $ column_1: num 0 0 0
## $ column_2: chr "" "" ""
# Coerce a matrix to a data.frame using as.data.frame()
matrix_data <- matrix(letters[4:12], nrow = 3)
as.data.frame(matrix_data)
## V1 V2 V3
## 1 d g j
## 2 e h k
## 3 f i l
str(as.data.frame(matrix_data))
## 'data.frame': 3 obs. of 3 variables:
## $ V1: chr "d" "e" "f"
## $ V2: chr "g" "h" "i"
## $ V3: chr "j" "k" "l"
# Subsetting rows and columns from a data.frame
# Get the first row
iris[1, ]
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
# Get the first five rows
iris[1:5, ]
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
# Get the first column
iris[, 1]
## [1] 5.1 4.9 4.7 4.6 5.0 5.4 4.6 5.0 4.4 4.9 5.4 4.8 4.8 4.3 5.8 5.7 5.4 5.1
## [19] 5.7 5.1 5.4 5.1 4.6 5.1 4.8 5.0 5.0 5.2 5.2 4.7 4.8 5.4 5.2 5.5 4.9 5.0
## [37] 5.5 4.9 4.4 5.1 5.0 4.5 4.4 5.0 5.1 4.8 5.1 4.6 5.3 5.0 7.0 6.4 6.9 5.5
## [55] 6.5 5.7 6.3 4.9 6.6 5.2 5.0 5.9 6.0 6.1 5.6 6.7 5.6 5.8 6.2 5.6 5.9 6.1
## [73] 6.3 6.1 6.4 6.6 6.8 6.7 6.0 5.7 5.5 5.5 5.8 6.0 5.4 6.0 6.7 6.3 5.6 5.5
## [91] 5.5 6.1 5.8 5.0 5.6 5.7 5.7 6.2 5.1 5.7 6.3 5.8 7.1 6.3 6.5 7.6 4.9 7.3
## [109] 6.7 7.2 6.5 6.4 6.8 5.7 5.8 6.4 6.5 7.7 7.7 6.0 6.9 5.6 7.7 6.3 6.7 7.2
## [127] 6.2 6.1 6.4 7.2 7.4 7.9 6.4 6.3 6.1 7.7 6.3 6.4 6.0 6.9 6.7 6.9 5.8 6.8
## [145] 6.7 6.7 6.3 6.5 6.2 5.9
# Get the first, third, and fifth columns
iris[, c(1, 3, 5)]
## Sepal.Length Petal.Length Species
## 1 5.1 1.4 setosa
## 2 4.9 1.4 setosa
## 3 4.7 1.3 setosa
## 4 4.6 1.5 setosa
## 5 5.0 1.4 setosa
## 6 5.4 1.7 setosa
## 7 4.6 1.4 setosa
## 8 5.0 1.5 setosa
## 9 4.4 1.4 setosa
## 10 4.9 1.5 setosa
## 11 5.4 1.5 setosa
## 12 4.8 1.6 setosa
## 13 4.8 1.4 setosa
## 14 4.3 1.1 setosa
## 15 5.8 1.2 setosa
## 16 5.7 1.5 setosa
## 17 5.4 1.3 setosa
## 18 5.1 1.4 setosa
## 19 5.7 1.7 setosa
## 20 5.1 1.5 setosa
## 21 5.4 1.7 setosa
## 22 5.1 1.5 setosa
## 23 4.6 1.0 setosa
## 24 5.1 1.7 setosa
## 25 4.8 1.9 setosa
## 26 5.0 1.6 setosa
## 27 5.0 1.6 setosa
## 28 5.2 1.5 setosa
## 29 5.2 1.4 setosa
## 30 4.7 1.6 setosa
## 31 4.8 1.6 setosa
## 32 5.4 1.5 setosa
## 33 5.2 1.5 setosa
## 34 5.5 1.4 setosa
## 35 4.9 1.5 setosa
## 36 5.0 1.2 setosa
## 37 5.5 1.3 setosa
## 38 4.9 1.4 setosa
## 39 4.4 1.3 setosa
## 40 5.1 1.5 setosa
## 41 5.0 1.3 setosa
## 42 4.5 1.3 setosa
## 43 4.4 1.3 setosa
## 44 5.0 1.6 setosa
## 45 5.1 1.9 setosa
## 46 4.8 1.4 setosa
## 47 5.1 1.6 setosa
## 48 4.6 1.4 setosa
## 49 5.3 1.5 setosa
## 50 5.0 1.4 setosa
## 51 7.0 4.7 versicolor
## 52 6.4 4.5 versicolor
## 53 6.9 4.9 versicolor
## 54 5.5 4.0 versicolor
## 55 6.5 4.6 versicolor
## 56 5.7 4.5 versicolor
## 57 6.3 4.7 versicolor
## 58 4.9 3.3 versicolor
## 59 6.6 4.6 versicolor
## 60 5.2 3.9 versicolor
## 61 5.0 3.5 versicolor
## 62 5.9 4.2 versicolor
## 63 6.0 4.0 versicolor
## 64 6.1 4.7 versicolor
## 65 5.6 3.6 versicolor
## 66 6.7 4.4 versicolor
## 67 5.6 4.5 versicolor
## 68 5.8 4.1 versicolor
## 69 6.2 4.5 versicolor
## 70 5.6 3.9 versicolor
## 71 5.9 4.8 versicolor
## 72 6.1 4.0 versicolor
## 73 6.3 4.9 versicolor
## 74 6.1 4.7 versicolor
## 75 6.4 4.3 versicolor
## 76 6.6 4.4 versicolor
## 77 6.8 4.8 versicolor
## 78 6.7 5.0 versicolor
## 79 6.0 4.5 versicolor
## 80 5.7 3.5 versicolor
## 81 5.5 3.8 versicolor
## 82 5.5 3.7 versicolor
## 83 5.8 3.9 versicolor
## 84 6.0 5.1 versicolor
## 85 5.4 4.5 versicolor
## 86 6.0 4.5 versicolor
## 87 6.7 4.7 versicolor
## 88 6.3 4.4 versicolor
## 89 5.6 4.1 versicolor
## 90 5.5 4.0 versicolor
## 91 5.5 4.4 versicolor
## 92 6.1 4.6 versicolor
## 93 5.8 4.0 versicolor
## 94 5.0 3.3 versicolor
## 95 5.6 4.2 versicolor
## 96 5.7 4.2 versicolor
## 97 5.7 4.2 versicolor
## 98 6.2 4.3 versicolor
## 99 5.1 3.0 versicolor
## 100 5.7 4.1 versicolor
## 101 6.3 6.0 virginica
## 102 5.8 5.1 virginica
## 103 7.1 5.9 virginica
## 104 6.3 5.6 virginica
## 105 6.5 5.8 virginica
## 106 7.6 6.6 virginica
## 107 4.9 4.5 virginica
## 108 7.3 6.3 virginica
## 109 6.7 5.8 virginica
## 110 7.2 6.1 virginica
## 111 6.5 5.1 virginica
## 112 6.4 5.3 virginica
## 113 6.8 5.5 virginica
## 114 5.7 5.0 virginica
## 115 5.8 5.1 virginica
## 116 6.4 5.3 virginica
## 117 6.5 5.5 virginica
## 118 7.7 6.7 virginica
## 119 7.7 6.9 virginica
## 120 6.0 5.0 virginica
## 121 6.9 5.7 virginica
## 122 5.6 4.9 virginica
## 123 7.7 6.7 virginica
## 124 6.3 4.9 virginica
## 125 6.7 5.7 virginica
## 126 7.2 6.0 virginica
## 127 6.2 4.8 virginica
## 128 6.1 4.9 virginica
## 129 6.4 5.6 virginica
## 130 7.2 5.8 virginica
## 131 7.4 6.1 virginica
## 132 7.9 6.4 virginica
## 133 6.4 5.6 virginica
## 134 6.3 5.1 virginica
## 135 6.1 5.6 virginica
## 136 7.7 6.1 virginica
## 137 6.3 5.6 virginica
## 138 6.4 5.5 virginica
## 139 6.0 4.8 virginica
## 140 6.9 5.4 virginica
## 141 6.7 5.6 virginica
## 142 6.9 5.1 virginica
## 143 5.8 5.1 virginica
## 144 6.8 5.9 virginica
## 145 6.7 5.7 virginica
## 146 6.7 5.2 virginica
## 147 6.3 5.0 virginica
## 148 6.5 5.2 virginica
## 149 6.2 5.4 virginica
## 150 5.9 5.1 virginica
# Get the Species column using column name
iris[, "Species"]
## [1] setosa setosa setosa setosa setosa setosa
## [7] setosa setosa setosa setosa setosa setosa
## [13] setosa setosa setosa setosa setosa setosa
## [19] setosa setosa setosa setosa setosa setosa
## [25] setosa setosa setosa setosa setosa setosa
## [31] setosa setosa setosa setosa setosa setosa
## [37] setosa setosa setosa setosa setosa setosa
## [43] setosa setosa setosa setosa setosa setosa
## [49] setosa setosa versicolor versicolor versicolor versicolor
## [55] versicolor versicolor versicolor versicolor versicolor versicolor
## [61] versicolor versicolor versicolor versicolor versicolor versicolor
## [67] versicolor versicolor versicolor versicolor versicolor versicolor
## [73] versicolor versicolor versicolor versicolor versicolor versicolor
## [79] versicolor versicolor versicolor versicolor versicolor versicolor
## [85] versicolor versicolor versicolor versicolor versicolor versicolor
## [91] versicolor versicolor versicolor versicolor versicolor versicolor
## [97] versicolor versicolor versicolor versicolor virginica virginica
## [103] virginica virginica virginica virginica virginica virginica
## [109] virginica virginica virginica virginica virginica virginica
## [115] virginica virginica virginica virginica virginica virginica
## [121] virginica virginica virginica virginica virginica virginica
## [127] virginica virginica virginica virginica virginica virginica
## [133] virginica virginica virginica virginica virginica virginica
## [139] virginica virginica virginica virginica virginica virginica
## [145] virginica virginica virginica virginica virginica virginica
## Levels: setosa versicolor virginica
# Get the Sepal.Length, Sepal.Width, and Petal.Length columns using column names
iris[, c("Sepal.Length", "Sepal.Width", "Petal.Length")]
## Sepal.Length Sepal.Width Petal.Length
## 1 5.1 3.5 1.4
## 2 4.9 3.0 1.4
## 3 4.7 3.2 1.3
## 4 4.6 3.1 1.5
## 5 5.0 3.6 1.4
## 6 5.4 3.9 1.7
## 7 4.6 3.4 1.4
## 8 5.0 3.4 1.5
## 9 4.4 2.9 1.4
## 10 4.9 3.1 1.5
## 11 5.4 3.7 1.5
## 12 4.8 3.4 1.6
## 13 4.8 3.0 1.4
## 14 4.3 3.0 1.1
## 15 5.8 4.0 1.2
## 16 5.7 4.4 1.5
## 17 5.4 3.9 1.3
## 18 5.1 3.5 1.4
## 19 5.7 3.8 1.7
## 20 5.1 3.8 1.5
## 21 5.4 3.4 1.7
## 22 5.1 3.7 1.5
## 23 4.6 3.6 1.0
## 24 5.1 3.3 1.7
## 25 4.8 3.4 1.9
## 26 5.0 3.0 1.6
## 27 5.0 3.4 1.6
## 28 5.2 3.5 1.5
## 29 5.2 3.4 1.4
## 30 4.7 3.2 1.6
## 31 4.8 3.1 1.6
## 32 5.4 3.4 1.5
## 33 5.2 4.1 1.5
## 34 5.5 4.2 1.4
## 35 4.9 3.1 1.5
## 36 5.0 3.2 1.2
## 37 5.5 3.5 1.3
## 38 4.9 3.6 1.4
## 39 4.4 3.0 1.3
## 40 5.1 3.4 1.5
## 41 5.0 3.5 1.3
## 42 4.5 2.3 1.3
## 43 4.4 3.2 1.3
## 44 5.0 3.5 1.6
## 45 5.1 3.8 1.9
## 46 4.8 3.0 1.4
## 47 5.1 3.8 1.6
## 48 4.6 3.2 1.4
## 49 5.3 3.7 1.5
## 50 5.0 3.3 1.4
## 51 7.0 3.2 4.7
## 52 6.4 3.2 4.5
## 53 6.9 3.1 4.9
## 54 5.5 2.3 4.0
## 55 6.5 2.8 4.6
## 56 5.7 2.8 4.5
## 57 6.3 3.3 4.7
## 58 4.9 2.4 3.3
## 59 6.6 2.9 4.6
## 60 5.2 2.7 3.9
## 61 5.0 2.0 3.5
## 62 5.9 3.0 4.2
## 63 6.0 2.2 4.0
## 64 6.1 2.9 4.7
## 65 5.6 2.9 3.6
## 66 6.7 3.1 4.4
## 67 5.6 3.0 4.5
## 68 5.8 2.7 4.1
## 69 6.2 2.2 4.5
## 70 5.6 2.5 3.9
## 71 5.9 3.2 4.8
## 72 6.1 2.8 4.0
## 73 6.3 2.5 4.9
## 74 6.1 2.8 4.7
## 75 6.4 2.9 4.3
## 76 6.6 3.0 4.4
## 77 6.8 2.8 4.8
## 78 6.7 3.0 5.0
## 79 6.0 2.9 4.5
## 80 5.7 2.6 3.5
## 81 5.5 2.4 3.8
## 82 5.5 2.4 3.7
## 83 5.8 2.7 3.9
## 84 6.0 2.7 5.1
## 85 5.4 3.0 4.5
## 86 6.0 3.4 4.5
## 87 6.7 3.1 4.7
## 88 6.3 2.3 4.4
## 89 5.6 3.0 4.1
## 90 5.5 2.5 4.0
## 91 5.5 2.6 4.4
## 92 6.1 3.0 4.6
## 93 5.8 2.6 4.0
## 94 5.0 2.3 3.3
## 95 5.6 2.7 4.2
## 96 5.7 3.0 4.2
## 97 5.7 2.9 4.2
## 98 6.2 2.9 4.3
## 99 5.1 2.5 3.0
## 100 5.7 2.8 4.1
## 101 6.3 3.3 6.0
## 102 5.8 2.7 5.1
## 103 7.1 3.0 5.9
## 104 6.3 2.9 5.6
## 105 6.5 3.0 5.8
## 106 7.6 3.0 6.6
## 107 4.9 2.5 4.5
## 108 7.3 2.9 6.3
## 109 6.7 2.5 5.8
## 110 7.2 3.6 6.1
## 111 6.5 3.2 5.1
## 112 6.4 2.7 5.3
## 113 6.8 3.0 5.5
## 114 5.7 2.5 5.0
## 115 5.8 2.8 5.1
## 116 6.4 3.2 5.3
## 117 6.5 3.0 5.5
## 118 7.7 3.8 6.7
## 119 7.7 2.6 6.9
## 120 6.0 2.2 5.0
## 121 6.9 3.2 5.7
## 122 5.6 2.8 4.9
## 123 7.7 2.8 6.7
## 124 6.3 2.7 4.9
## 125 6.7 3.3 5.7
## 126 7.2 3.2 6.0
## 127 6.2 2.8 4.8
## 128 6.1 3.0 4.9
## 129 6.4 2.8 5.6
## 130 7.2 3.0 5.8
## 131 7.4 2.8 6.1
## 132 7.9 3.8 6.4
## 133 6.4 2.8 5.6
## 134 6.3 2.8 5.1
## 135 6.1 2.6 5.6
## 136 7.7 3.0 6.1
## 137 6.3 3.4 5.6
## 138 6.4 3.1 5.5
## 139 6.0 3.0 4.8
## 140 6.9 3.1 5.4
## 141 6.7 3.1 5.6
## 142 6.9 3.1 5.1
## 143 5.8 2.7 5.1
## 144 6.8 3.2 5.9
## 145 6.7 3.3 5.7
## 146 6.7 3.0 5.2
## 147 6.3 2.5 5.0
## 148 6.5 3.0 5.2
## 149 6.2 3.4 5.4
## 150 5.9 3.0 5.1
# Get a row by row name
iris["1", ]
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
# First four rows of the Sepal.Length column
iris[1:4, "Sepal.Length"]
## [1] 5.1 4.9 4.7 4.6
# 2nd and 5th row of the Sepal.Length, Sepal.Width, and Petal.Length columns
iris[c(2, 5), c("Sepal.Length", "Sepal.Width", "Petal.Length")]
## Sepal.Length Sepal.Width Petal.Length
## 2 4.9 3.0 1.4
## 5 5.0 3.6 1.4
# Keep a single column as a data.frame
class(iris[, "Species", drop = FALSE])
## [1] "data.frame"
# Subsetting like a list
iris["Species"]
## Species
## 1 setosa
## 2 setosa
## 3 setosa
## 4 setosa
## 5 setosa
## 6 setosa
## 7 setosa
## 8 setosa
## 9 setosa
## 10 setosa
## 11 setosa
## 12 setosa
## 13 setosa
## 14 setosa
## 15 setosa
## 16 setosa
## 17 setosa
## 18 setosa
## 19 setosa
## 20 setosa
## 21 setosa
## 22 setosa
## 23 setosa
## 24 setosa
## 25 setosa
## 26 setosa
## 27 setosa
## 28 setosa
## 29 setosa
## 30 setosa
## 31 setosa
## 32 setosa
## 33 setosa
## 34 setosa
## 35 setosa
## 36 setosa
## 37 setosa
## 38 setosa
## 39 setosa
## 40 setosa
## 41 setosa
## 42 setosa
## 43 setosa
## 44 setosa
## 45 setosa
## 46 setosa
## 47 setosa
## 48 setosa
## 49 setosa
## 50 setosa
## 51 versicolor
## 52 versicolor
## 53 versicolor
## 54 versicolor
## 55 versicolor
## 56 versicolor
## 57 versicolor
## 58 versicolor
## 59 versicolor
## 60 versicolor
## 61 versicolor
## 62 versicolor
## 63 versicolor
## 64 versicolor
## 65 versicolor
## 66 versicolor
## 67 versicolor
## 68 versicolor
## 69 versicolor
## 70 versicolor
## 71 versicolor
## 72 versicolor
## 73 versicolor
## 74 versicolor
## 75 versicolor
## 76 versicolor
## 77 versicolor
## 78 versicolor
## 79 versicolor
## 80 versicolor
## 81 versicolor
## 82 versicolor
## 83 versicolor
## 84 versicolor
## 85 versicolor
## 86 versicolor
## 87 versicolor
## 88 versicolor
## 89 versicolor
## 90 versicolor
## 91 versicolor
## 92 versicolor
## 93 versicolor
## 94 versicolor
## 95 versicolor
## 96 versicolor
## 97 versicolor
## 98 versicolor
## 99 versicolor
## 100 versicolor
## 101 virginica
## 102 virginica
## 103 virginica
## 104 virginica
## 105 virginica
## 106 virginica
## 107 virginica
## 108 virginica
## 109 virginica
## 110 virginica
## 111 virginica
## 112 virginica
## 113 virginica
## 114 virginica
## 115 virginica
## 116 virginica
## 117 virginica
## 118 virginica
## 119 virginica
## 120 virginica
## 121 virginica
## 122 virginica
## 123 virginica
## 124 virginica
## 125 virginica
## 126 virginica
## 127 virginica
## 128 virginica
## 129 virginica
## 130 virginica
## 131 virginica
## 132 virginica
## 133 virginica
## 134 virginica
## 135 virginica
## 136 virginica
## 137 virginica
## 138 virginica
## 139 virginica
## 140 virginica
## 141 virginica
## 142 virginica
## 143 virginica
## 144 virginica
## 145 virginica
## 146 virginica
## 147 virginica
## 148 virginica
## 149 virginica
## 150 virginica
iris[c("Sepal.Length", "Sepal.Width", "Petal.Length")]
## Sepal.Length Sepal.Width Petal.Length
## 1 5.1 3.5 1.4
## 2 4.9 3.0 1.4
## 3 4.7 3.2 1.3
## 4 4.6 3.1 1.5
## 5 5.0 3.6 1.4
## 6 5.4 3.9 1.7
## 7 4.6 3.4 1.4
## 8 5.0 3.4 1.5
## 9 4.4 2.9 1.4
## 10 4.9 3.1 1.5
## 11 5.4 3.7 1.5
## 12 4.8 3.4 1.6
## 13 4.8 3.0 1.4
## 14 4.3 3.0 1.1
## 15 5.8 4.0 1.2
## 16 5.7 4.4 1.5
## 17 5.4 3.9 1.3
## 18 5.1 3.5 1.4
## 19 5.7 3.8 1.7
## 20 5.1 3.8 1.5
## 21 5.4 3.4 1.7
## 22 5.1 3.7 1.5
## 23 4.6 3.6 1.0
## 24 5.1 3.3 1.7
## 25 4.8 3.4 1.9
## 26 5.0 3.0 1.6
## 27 5.0 3.4 1.6
## 28 5.2 3.5 1.5
## 29 5.2 3.4 1.4
## 30 4.7 3.2 1.6
## 31 4.8 3.1 1.6
## 32 5.4 3.4 1.5
## 33 5.2 4.1 1.5
## 34 5.5 4.2 1.4
## 35 4.9 3.1 1.5
## 36 5.0 3.2 1.2
## 37 5.5 3.5 1.3
## 38 4.9 3.6 1.4
## 39 4.4 3.0 1.3
## 40 5.1 3.4 1.5
## 41 5.0 3.5 1.3
## 42 4.5 2.3 1.3
## 43 4.4 3.2 1.3
## 44 5.0 3.5 1.6
## 45 5.1 3.8 1.9
## 46 4.8 3.0 1.4
## 47 5.1 3.8 1.6
## 48 4.6 3.2 1.4
## 49 5.3 3.7 1.5
## 50 5.0 3.3 1.4
## 51 7.0 3.2 4.7
## 52 6.4 3.2 4.5
## 53 6.9 3.1 4.9
## 54 5.5 2.3 4.0
## 55 6.5 2.8 4.6
## 56 5.7 2.8 4.5
## 57 6.3 3.3 4.7
## 58 4.9 2.4 3.3
## 59 6.6 2.9 4.6
## 60 5.2 2.7 3.9
## 61 5.0 2.0 3.5
## 62 5.9 3.0 4.2
## 63 6.0 2.2 4.0
## 64 6.1 2.9 4.7
## 65 5.6 2.9 3.6
## 66 6.7 3.1 4.4
## 67 5.6 3.0 4.5
## 68 5.8 2.7 4.1
## 69 6.2 2.2 4.5
## 70 5.6 2.5 3.9
## 71 5.9 3.2 4.8
## 72 6.1 2.8 4.0
## 73 6.3 2.5 4.9
## 74 6.1 2.8 4.7
## 75 6.4 2.9 4.3
## 76 6.6 3.0 4.4
## 77 6.8 2.8 4.8
## 78 6.7 3.0 5.0
## 79 6.0 2.9 4.5
## 80 5.7 2.6 3.5
## 81 5.5 2.4 3.8
## 82 5.5 2.4 3.7
## 83 5.8 2.7 3.9
## 84 6.0 2.7 5.1
## 85 5.4 3.0 4.5
## 86 6.0 3.4 4.5
## 87 6.7 3.1 4.7
## 88 6.3 2.3 4.4
## 89 5.6 3.0 4.1
## 90 5.5 2.5 4.0
## 91 5.5 2.6 4.4
## 92 6.1 3.0 4.6
## 93 5.8 2.6 4.0
## 94 5.0 2.3 3.3
## 95 5.6 2.7 4.2
## 96 5.7 3.0 4.2
## 97 5.7 2.9 4.2
## 98 6.2 2.9 4.3
## 99 5.1 2.5 3.0
## 100 5.7 2.8 4.1
## 101 6.3 3.3 6.0
## 102 5.8 2.7 5.1
## 103 7.1 3.0 5.9
## 104 6.3 2.9 5.6
## 105 6.5 3.0 5.8
## 106 7.6 3.0 6.6
## 107 4.9 2.5 4.5
## 108 7.3 2.9 6.3
## 109 6.7 2.5 5.8
## 110 7.2 3.6 6.1
## 111 6.5 3.2 5.1
## 112 6.4 2.7 5.3
## 113 6.8 3.0 5.5
## 114 5.7 2.5 5.0
## 115 5.8 2.8 5.1
## 116 6.4 3.2 5.3
## 117 6.5 3.0 5.5
## 118 7.7 3.8 6.7
## 119 7.7 2.6 6.9
## 120 6.0 2.2 5.0
## 121 6.9 3.2 5.7
## 122 5.6 2.8 4.9
## 123 7.7 2.8 6.7
## 124 6.3 2.7 4.9
## 125 6.7 3.3 5.7
## 126 7.2 3.2 6.0
## 127 6.2 2.8 4.8
## 128 6.1 3.0 4.9
## 129 6.4 2.8 5.6
## 130 7.2 3.0 5.8
## 131 7.4 2.8 6.1
## 132 7.9 3.8 6.4
## 133 6.4 2.8 5.6
## 134 6.3 2.8 5.1
## 135 6.1 2.6 5.6
## 136 7.7 3.0 6.1
## 137 6.3 3.4 5.6
## 138 6.4 3.1 5.5
## 139 6.0 3.0 4.8
## 140 6.9 3.1 5.4
## 141 6.7 3.1 5.6
## 142 6.9 3.1 5.1
## 143 5.8 2.7 5.1
## 144 6.8 3.2 5.9
## 145 6.7 3.3 5.7
## 146 6.7 3.0 5.2
## 147 6.3 2.5 5.0
## 148 6.5 3.0 5.2
## 149 6.2 3.4 5.4
## 150 5.9 3.0 5.1
selected_columns <- c("Sepal.Length", "Sepal.Width", "Petal.Width")
iris[selected_columns]
## Sepal.Length Sepal.Width Petal.Width
## 1 5.1 3.5 0.2
## 2 4.9 3.0 0.2
## 3 4.7 3.2 0.2
## 4 4.6 3.1 0.2
## 5 5.0 3.6 0.2
## 6 5.4 3.9 0.4
## 7 4.6 3.4 0.3
## 8 5.0 3.4 0.2
## 9 4.4 2.9 0.2
## 10 4.9 3.1 0.1
## 11 5.4 3.7 0.2
## 12 4.8 3.4 0.2
## 13 4.8 3.0 0.1
## 14 4.3 3.0 0.1
## 15 5.8 4.0 0.2
## 16 5.7 4.4 0.4
## 17 5.4 3.9 0.4
## 18 5.1 3.5 0.3
## 19 5.7 3.8 0.3
## 20 5.1 3.8 0.3
## 21 5.4 3.4 0.2
## 22 5.1 3.7 0.4
## 23 4.6 3.6 0.2
## 24 5.1 3.3 0.5
## 25 4.8 3.4 0.2
## 26 5.0 3.0 0.2
## 27 5.0 3.4 0.4
## 28 5.2 3.5 0.2
## 29 5.2 3.4 0.2
## 30 4.7 3.2 0.2
## 31 4.8 3.1 0.2
## 32 5.4 3.4 0.4
## 33 5.2 4.1 0.1
## 34 5.5 4.2 0.2
## 35 4.9 3.1 0.2
## 36 5.0 3.2 0.2
## 37 5.5 3.5 0.2
## 38 4.9 3.6 0.1
## 39 4.4 3.0 0.2
## 40 5.1 3.4 0.2
## 41 5.0 3.5 0.3
## 42 4.5 2.3 0.3
## 43 4.4 3.2 0.2
## 44 5.0 3.5 0.6
## 45 5.1 3.8 0.4
## 46 4.8 3.0 0.3
## 47 5.1 3.8 0.2
## 48 4.6 3.2 0.2
## 49 5.3 3.7 0.2
## 50 5.0 3.3 0.2
## 51 7.0 3.2 1.4
## 52 6.4 3.2 1.5
## 53 6.9 3.1 1.5
## 54 5.5 2.3 1.3
## 55 6.5 2.8 1.5
## 56 5.7 2.8 1.3
## 57 6.3 3.3 1.6
## 58 4.9 2.4 1.0
## 59 6.6 2.9 1.3
## 60 5.2 2.7 1.4
## 61 5.0 2.0 1.0
## 62 5.9 3.0 1.5
## 63 6.0 2.2 1.0
## 64 6.1 2.9 1.4
## 65 5.6 2.9 1.3
## 66 6.7 3.1 1.4
## 67 5.6 3.0 1.5
## 68 5.8 2.7 1.0
## 69 6.2 2.2 1.5
## 70 5.6 2.5 1.1
## 71 5.9 3.2 1.8
## 72 6.1 2.8 1.3
## 73 6.3 2.5 1.5
## 74 6.1 2.8 1.2
## 75 6.4 2.9 1.3
## 76 6.6 3.0 1.4
## 77 6.8 2.8 1.4
## 78 6.7 3.0 1.7
## 79 6.0 2.9 1.5
## 80 5.7 2.6 1.0
## 81 5.5 2.4 1.1
## 82 5.5 2.4 1.0
## 83 5.8 2.7 1.2
## 84 6.0 2.7 1.6
## 85 5.4 3.0 1.5
## 86 6.0 3.4 1.6
## 87 6.7 3.1 1.5
## 88 6.3 2.3 1.3
## 89 5.6 3.0 1.3
## 90 5.5 2.5 1.3
## 91 5.5 2.6 1.2
## 92 6.1 3.0 1.4
## 93 5.8 2.6 1.2
## 94 5.0 2.3 1.0
## 95 5.6 2.7 1.3
## 96 5.7 3.0 1.2
## 97 5.7 2.9 1.3
## 98 6.2 2.9 1.3
## 99 5.1 2.5 1.1
## 100 5.7 2.8 1.3
## 101 6.3 3.3 2.5
## 102 5.8 2.7 1.9
## 103 7.1 3.0 2.1
## 104 6.3 2.9 1.8
## 105 6.5 3.0 2.2
## 106 7.6 3.0 2.1
## 107 4.9 2.5 1.7
## 108 7.3 2.9 1.8
## 109 6.7 2.5 1.8
## 110 7.2 3.6 2.5
## 111 6.5 3.2 2.0
## 112 6.4 2.7 1.9
## 113 6.8 3.0 2.1
## 114 5.7 2.5 2.0
## 115 5.8 2.8 2.4
## 116 6.4 3.2 2.3
## 117 6.5 3.0 1.8
## 118 7.7 3.8 2.2
## 119 7.7 2.6 2.3
## 120 6.0 2.2 1.5
## 121 6.9 3.2 2.3
## 122 5.6 2.8 2.0
## 123 7.7 2.8 2.0
## 124 6.3 2.7 1.8
## 125 6.7 3.3 2.1
## 126 7.2 3.2 1.8
## 127 6.2 2.8 1.8
## 128 6.1 3.0 1.8
## 129 6.4 2.8 2.1
## 130 7.2 3.0 1.6
## 131 7.4 2.8 1.9
## 132 7.9 3.8 2.0
## 133 6.4 2.8 2.2
## 134 6.3 2.8 1.5
## 135 6.1 2.6 1.4
## 136 7.7 3.0 2.3
## 137 6.3 3.4 2.4
## 138 6.4 3.1 1.8
## 139 6.0 3.0 1.8
## 140 6.9 3.1 2.1
## 141 6.7 3.1 2.4
## 142 6.9 3.1 2.3
## 143 5.8 2.7 1.9
## 144 6.8 3.2 2.3
## 145 6.7 3.3 2.5
## 146 6.7 3.0 2.3
## 147 6.3 2.5 1.9
## 148 6.5 3.0 2.0
## 149 6.2 3.4 2.3
## 150 5.9 3.0 1.8
# Using double brackets to extract a single column as a vector
iris[["Species"]]
## [1] setosa setosa setosa setosa setosa setosa
## [7] setosa setosa setosa setosa setosa setosa
## [13] setosa setosa setosa setosa setosa setosa
## [19] setosa setosa setosa setosa setosa setosa
## [25] setosa setosa setosa setosa setosa setosa
## [31] setosa setosa setosa setosa setosa setosa
## [37] setosa setosa setosa setosa setosa setosa
## [43] setosa setosa setosa setosa setosa setosa
## [49] setosa setosa versicolor versicolor versicolor versicolor
## [55] versicolor versicolor versicolor versicolor versicolor versicolor
## [61] versicolor versicolor versicolor versicolor versicolor versicolor
## [67] versicolor versicolor versicolor versicolor versicolor versicolor
## [73] versicolor versicolor versicolor versicolor versicolor versicolor
## [79] versicolor versicolor versicolor versicolor versicolor versicolor
## [85] versicolor versicolor versicolor versicolor versicolor versicolor
## [91] versicolor versicolor versicolor versicolor versicolor versicolor
## [97] versicolor versicolor versicolor versicolor virginica virginica
## [103] virginica virginica virginica virginica virginica virginica
## [109] virginica virginica virginica virginica virginica virginica
## [115] virginica virginica virginica virginica virginica virginica
## [121] virginica virginica virginica virginica virginica virginica
## [127] virginica virginica virginica virginica virginica virginica
## [133] virginica virginica virginica virginica virginica virginica
## [139] virginica virginica virginica virginica virginica virginica
## [145] virginica virginica virginica virginica virginica virginica
## Levels: setosa versicolor virginica
# Using $ to access columns
iris$Species
## [1] setosa setosa setosa setosa setosa setosa
## [7] setosa setosa setosa setosa setosa setosa
## [13] setosa setosa setosa setosa setosa setosa
## [19] setosa setosa setosa setosa setosa setosa
## [25] setosa setosa setosa setosa setosa setosa
## [31] setosa setosa setosa setosa setosa setosa
## [37] setosa setosa setosa setosa setosa setosa
## [43] setosa setosa setosa setosa setosa setosa
## [49] setosa setosa versicolor versicolor versicolor versicolor
## [55] versicolor versicolor versicolor versicolor versicolor versicolor
## [61] versicolor versicolor versicolor versicolor versicolor versicolor
## [67] versicolor versicolor versicolor versicolor versicolor versicolor
## [73] versicolor versicolor versicolor versicolor versicolor versicolor
## [79] versicolor versicolor versicolor versicolor versicolor versicolor
## [85] versicolor versicolor versicolor versicolor versicolor versicolor
## [91] versicolor versicolor versicolor versicolor versicolor versicolor
## [97] versicolor versicolor versicolor versicolor virginica virginica
## [103] virginica virginica virginica virginica virginica virginica
## [109] virginica virginica virginica virginica virginica virginica
## [115] virginica virginica virginica virginica virginica virginica
## [121] virginica virginica virginica virginica virginica virginica
## [127] virginica virginica virginica virginica virginica virginica
## [133] virginica virginica virginica virginica virginica virginica
## [139] virginica virginica virginica virginica virginica virginica
## [145] virginica virginica virginica virginica virginica virginica
## Levels: setosa versicolor virginica
# Use negative indices to omit certain rows
iris[-1, ]
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosa
## 7 4.6 3.4 1.4 0.3 setosa
## 8 5.0 3.4 1.5 0.2 setosa
## 9 4.4 2.9 1.4 0.2 setosa
## 10 4.9 3.1 1.5 0.1 setosa
## 11 5.4 3.7 1.5 0.2 setosa
## 12 4.8 3.4 1.6 0.2 setosa
## 13 4.8 3.0 1.4 0.1 setosa
## 14 4.3 3.0 1.1 0.1 setosa
## 15 5.8 4.0 1.2 0.2 setosa
## 16 5.7 4.4 1.5 0.4 setosa
## 17 5.4 3.9 1.3 0.4 setosa
## 18 5.1 3.5 1.4 0.3 setosa
## 19 5.7 3.8 1.7 0.3 setosa
## 20 5.1 3.8 1.5 0.3 setosa
## 21 5.4 3.4 1.7 0.2 setosa
## 22 5.1 3.7 1.5 0.4 setosa
## 23 4.6 3.6 1.0 0.2 setosa
## 24 5.1 3.3 1.7 0.5 setosa
## 25 4.8 3.4 1.9 0.2 setosa
## 26 5.0 3.0 1.6 0.2 setosa
## 27 5.0 3.4 1.6 0.4 setosa
## 28 5.2 3.5 1.5 0.2 setosa
## 29 5.2 3.4 1.4 0.2 setosa
## 30 4.7 3.2 1.6 0.2 setosa
## 31 4.8 3.1 1.6 0.2 setosa
## 32 5.4 3.4 1.5 0.4 setosa
## 33 5.2 4.1 1.5 0.1 setosa
## 34 5.5 4.2 1.4 0.2 setosa
## 35 4.9 3.1 1.5 0.2 setosa
## 36 5.0 3.2 1.2 0.2 setosa
## 37 5.5 3.5 1.3 0.2 setosa
## 38 4.9 3.6 1.4 0.1 setosa
## 39 4.4 3.0 1.3 0.2 setosa
## 40 5.1 3.4 1.5 0.2 setosa
## 41 5.0 3.5 1.3 0.3 setosa
## 42 4.5 2.3 1.3 0.3 setosa
## 43 4.4 3.2 1.3 0.2 setosa
## 44 5.0 3.5 1.6 0.6 setosa
## 45 5.1 3.8 1.9 0.4 setosa
## 46 4.8 3.0 1.4 0.3 setosa
## 47 5.1 3.8 1.6 0.2 setosa
## 48 4.6 3.2 1.4 0.2 setosa
## 49 5.3 3.7 1.5 0.2 setosa
## 50 5.0 3.3 1.4 0.2 setosa
## 51 7.0 3.2 4.7 1.4 versicolor
## 52 6.4 3.2 4.5 1.5 versicolor
## 53 6.9 3.1 4.9 1.5 versicolor
## 54 5.5 2.3 4.0 1.3 versicolor
## 55 6.5 2.8 4.6 1.5 versicolor
## 56 5.7 2.8 4.5 1.3 versicolor
## 57 6.3 3.3 4.7 1.6 versicolor
## 58 4.9 2.4 3.3 1.0 versicolor
## 59 6.6 2.9 4.6 1.3 versicolor
## 60 5.2 2.7 3.9 1.4 versicolor
## 61 5.0 2.0 3.5 1.0 versicolor
## 62 5.9 3.0 4.2 1.5 versicolor
## 63 6.0 2.2 4.0 1.0 versicolor
## 64 6.1 2.9 4.7 1.4 versicolor
## 65 5.6 2.9 3.6 1.3 versicolor
## 66 6.7 3.1 4.4 1.4 versicolor
## 67 5.6 3.0 4.5 1.5 versicolor
## 68 5.8 2.7 4.1 1.0 versicolor
## 69 6.2 2.2 4.5 1.5 versicolor
## 70 5.6 2.5 3.9 1.1 versicolor
## 71 5.9 3.2 4.8 1.8 versicolor
## 72 6.1 2.8 4.0 1.3 versicolor
## 73 6.3 2.5 4.9 1.5 versicolor
## 74 6.1 2.8 4.7 1.2 versicolor
## 75 6.4 2.9 4.3 1.3 versicolor
## 76 6.6 3.0 4.4 1.4 versicolor
## 77 6.8 2.8 4.8 1.4 versicolor
## 78 6.7 3.0 5.0 1.7 versicolor
## 79 6.0 2.9 4.5 1.5 versicolor
## 80 5.7 2.6 3.5 1.0 versicolor
## 81 5.5 2.4 3.8 1.1 versicolor
## 82 5.5 2.4 3.7 1.0 versicolor
## 83 5.8 2.7 3.9 1.2 versicolor
## 84 6.0 2.7 5.1 1.6 versicolor
## 85 5.4 3.0 4.5 1.5 versicolor
## 86 6.0 3.4 4.5 1.6 versicolor
## 87 6.7 3.1 4.7 1.5 versicolor
## 88 6.3 2.3 4.4 1.3 versicolor
## 89 5.6 3.0 4.1 1.3 versicolor
## 90 5.5 2.5 4.0 1.3 versicolor
## 91 5.5 2.6 4.4 1.2 versicolor
## 92 6.1 3.0 4.6 1.4 versicolor
## 93 5.8 2.6 4.0 1.2 versicolor
## 94 5.0 2.3 3.3 1.0 versicolor
## 95 5.6 2.7 4.2 1.3 versicolor
## 96 5.7 3.0 4.2 1.2 versicolor
## 97 5.7 2.9 4.2 1.3 versicolor
## 98 6.2 2.9 4.3 1.3 versicolor
## 99 5.1 2.5 3.0 1.1 versicolor
## 100 5.7 2.8 4.1 1.3 versicolor
## 101 6.3 3.3 6.0 2.5 virginica
## 102 5.8 2.7 5.1 1.9 virginica
## 103 7.1 3.0 5.9 2.1 virginica
## 104 6.3 2.9 5.6 1.8 virginica
## 105 6.5 3.0 5.8 2.2 virginica
## 106 7.6 3.0 6.6 2.1 virginica
## 107 4.9 2.5 4.5 1.7 virginica
## 108 7.3 2.9 6.3 1.8 virginica
## 109 6.7 2.5 5.8 1.8 virginica
## 110 7.2 3.6 6.1 2.5 virginica
## 111 6.5 3.2 5.1 2.0 virginica
## 112 6.4 2.7 5.3 1.9 virginica
## 113 6.8 3.0 5.5 2.1 virginica
## 114 5.7 2.5 5.0 2.0 virginica
## 115 5.8 2.8 5.1 2.4 virginica
## 116 6.4 3.2 5.3 2.3 virginica
## 117 6.5 3.0 5.5 1.8 virginica
## 118 7.7 3.8 6.7 2.2 virginica
## 119 7.7 2.6 6.9 2.3 virginica
## 120 6.0 2.2 5.0 1.5 virginica
## 121 6.9 3.2 5.7 2.3 virginica
## 122 5.6 2.8 4.9 2.0 virginica
## 123 7.7 2.8 6.7 2.0 virginica
## 124 6.3 2.7 4.9 1.8 virginica
## 125 6.7 3.3 5.7 2.1 virginica
## 126 7.2 3.2 6.0 1.8 virginica
## 127 6.2 2.8 4.8 1.8 virginica
## 128 6.1 3.0 4.9 1.8 virginica
## 129 6.4 2.8 5.6 2.1 virginica
## 130 7.2 3.0 5.8 1.6 virginica
## 131 7.4 2.8 6.1 1.9 virginica
## 132 7.9 3.8 6.4 2.0 virginica
## 133 6.4 2.8 5.6 2.2 virginica
## 134 6.3 2.8 5.1 1.5 virginica
## 135 6.1 2.6 5.6 1.4 virginica
## 136 7.7 3.0 6.1 2.3 virginica
## 137 6.3 3.4 5.6 2.4 virginica
## 138 6.4 3.1 5.5 1.8 virginica
## 139 6.0 3.0 4.8 1.8 virginica
## 140 6.9 3.1 5.4 2.1 virginica
## 141 6.7 3.1 5.6 2.4 virginica
## 142 6.9 3.1 5.1 2.3 virginica
## 143 5.8 2.7 5.1 1.9 virginica
## 144 6.8 3.2 5.9 2.3 virginica
## 145 6.7 3.3 5.7 2.5 virginica
## 146 6.7 3.0 5.2 2.3 virginica
## 147 6.3 2.5 5.0 1.9 virginica
## 148 6.5 3.0 5.2 2.0 virginica
## 149 6.2 3.4 5.4 2.3 virginica
## 150 5.9 3.0 5.1 1.8 virginica
iris[-(1:10), ]
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 11 5.4 3.7 1.5 0.2 setosa
## 12 4.8 3.4 1.6 0.2 setosa
## 13 4.8 3.0 1.4 0.1 setosa
## 14 4.3 3.0 1.1 0.1 setosa
## 15 5.8 4.0 1.2 0.2 setosa
## 16 5.7 4.4 1.5 0.4 setosa
## 17 5.4 3.9 1.3 0.4 setosa
## 18 5.1 3.5 1.4 0.3 setosa
## 19 5.7 3.8 1.7 0.3 setosa
## 20 5.1 3.8 1.5 0.3 setosa
## 21 5.4 3.4 1.7 0.2 setosa
## 22 5.1 3.7 1.5 0.4 setosa
## 23 4.6 3.6 1.0 0.2 setosa
## 24 5.1 3.3 1.7 0.5 setosa
## 25 4.8 3.4 1.9 0.2 setosa
## 26 5.0 3.0 1.6 0.2 setosa
## 27 5.0 3.4 1.6 0.4 setosa
## 28 5.2 3.5 1.5 0.2 setosa
## 29 5.2 3.4 1.4 0.2 setosa
## 30 4.7 3.2 1.6 0.2 setosa
## 31 4.8 3.1 1.6 0.2 setosa
## 32 5.4 3.4 1.5 0.4 setosa
## 33 5.2 4.1 1.5 0.1 setosa
## 34 5.5 4.2 1.4 0.2 setosa
## 35 4.9 3.1 1.5 0.2 setosa
## 36 5.0 3.2 1.2 0.2 setosa
## 37 5.5 3.5 1.3 0.2 setosa
## 38 4.9 3.6 1.4 0.1 setosa
## 39 4.4 3.0 1.3 0.2 setosa
## 40 5.1 3.4 1.5 0.2 setosa
## 41 5.0 3.5 1.3 0.3 setosa
## 42 4.5 2.3 1.3 0.3 setosa
## 43 4.4 3.2 1.3 0.2 setosa
## 44 5.0 3.5 1.6 0.6 setosa
## 45 5.1 3.8 1.9 0.4 setosa
## 46 4.8 3.0 1.4 0.3 setosa
## 47 5.1 3.8 1.6 0.2 setosa
## 48 4.6 3.2 1.4 0.2 setosa
## 49 5.3 3.7 1.5 0.2 setosa
## 50 5.0 3.3 1.4 0.2 setosa
## 51 7.0 3.2 4.7 1.4 versicolor
## 52 6.4 3.2 4.5 1.5 versicolor
## 53 6.9 3.1 4.9 1.5 versicolor
## 54 5.5 2.3 4.0 1.3 versicolor
## 55 6.5 2.8 4.6 1.5 versicolor
## 56 5.7 2.8 4.5 1.3 versicolor
## 57 6.3 3.3 4.7 1.6 versicolor
## 58 4.9 2.4 3.3 1.0 versicolor
## 59 6.6 2.9 4.6 1.3 versicolor
## 60 5.2 2.7 3.9 1.4 versicolor
## 61 5.0 2.0 3.5 1.0 versicolor
## 62 5.9 3.0 4.2 1.5 versicolor
## 63 6.0 2.2 4.0 1.0 versicolor
## 64 6.1 2.9 4.7 1.4 versicolor
## 65 5.6 2.9 3.6 1.3 versicolor
## 66 6.7 3.1 4.4 1.4 versicolor
## 67 5.6 3.0 4.5 1.5 versicolor
## 68 5.8 2.7 4.1 1.0 versicolor
## 69 6.2 2.2 4.5 1.5 versicolor
## 70 5.6 2.5 3.9 1.1 versicolor
## 71 5.9 3.2 4.8 1.8 versicolor
## 72 6.1 2.8 4.0 1.3 versicolor
## 73 6.3 2.5 4.9 1.5 versicolor
## 74 6.1 2.8 4.7 1.2 versicolor
## 75 6.4 2.9 4.3 1.3 versicolor
## 76 6.6 3.0 4.4 1.4 versicolor
## 77 6.8 2.8 4.8 1.4 versicolor
## 78 6.7 3.0 5.0 1.7 versicolor
## 79 6.0 2.9 4.5 1.5 versicolor
## 80 5.7 2.6 3.5 1.0 versicolor
## 81 5.5 2.4 3.8 1.1 versicolor
## 82 5.5 2.4 3.7 1.0 versicolor
## 83 5.8 2.7 3.9 1.2 versicolor
## 84 6.0 2.7 5.1 1.6 versicolor
## 85 5.4 3.0 4.5 1.5 versicolor
## 86 6.0 3.4 4.5 1.6 versicolor
## 87 6.7 3.1 4.7 1.5 versicolor
## 88 6.3 2.3 4.4 1.3 versicolor
## 89 5.6 3.0 4.1 1.3 versicolor
## 90 5.5 2.5 4.0 1.3 versicolor
## 91 5.5 2.6 4.4 1.2 versicolor
## 92 6.1 3.0 4.6 1.4 versicolor
## 93 5.8 2.6 4.0 1.2 versicolor
## 94 5.0 2.3 3.3 1.0 versicolor
## 95 5.6 2.7 4.2 1.3 versicolor
## 96 5.7 3.0 4.2 1.2 versicolor
## 97 5.7 2.9 4.2 1.3 versicolor
## 98 6.2 2.9 4.3 1.3 versicolor
## 99 5.1 2.5 3.0 1.1 versicolor
## 100 5.7 2.8 4.1 1.3 versicolor
## 101 6.3 3.3 6.0 2.5 virginica
## 102 5.8 2.7 5.1 1.9 virginica
## 103 7.1 3.0 5.9 2.1 virginica
## 104 6.3 2.9 5.6 1.8 virginica
## 105 6.5 3.0 5.8 2.2 virginica
## 106 7.6 3.0 6.6 2.1 virginica
## 107 4.9 2.5 4.5 1.7 virginica
## 108 7.3 2.9 6.3 1.8 virginica
## 109 6.7 2.5 5.8 1.8 virginica
## 110 7.2 3.6 6.1 2.5 virginica
## 111 6.5 3.2 5.1 2.0 virginica
## 112 6.4 2.7 5.3 1.9 virginica
## 113 6.8 3.0 5.5 2.1 virginica
## 114 5.7 2.5 5.0 2.0 virginica
## 115 5.8 2.8 5.1 2.4 virginica
## 116 6.4 3.2 5.3 2.3 virginica
## 117 6.5 3.0 5.5 1.8 virginica
## 118 7.7 3.8 6.7 2.2 virginica
## 119 7.7 2.6 6.9 2.3 virginica
## 120 6.0 2.2 5.0 1.5 virginica
## 121 6.9 3.2 5.7 2.3 virginica
## 122 5.6 2.8 4.9 2.0 virginica
## 123 7.7 2.8 6.7 2.0 virginica
## 124 6.3 2.7 4.9 1.8 virginica
## 125 6.7 3.3 5.7 2.1 virginica
## 126 7.2 3.2 6.0 1.8 virginica
## 127 6.2 2.8 4.8 1.8 virginica
## 128 6.1 3.0 4.9 1.8 virginica
## 129 6.4 2.8 5.6 2.1 virginica
## 130 7.2 3.0 5.8 1.6 virginica
## 131 7.4 2.8 6.1 1.9 virginica
## 132 7.9 3.8 6.4 2.0 virginica
## 133 6.4 2.8 5.6 2.2 virginica
## 134 6.3 2.8 5.1 1.5 virginica
## 135 6.1 2.6 5.6 1.4 virginica
## 136 7.7 3.0 6.1 2.3 virginica
## 137 6.3 3.4 5.6 2.4 virginica
## 138 6.4 3.1 5.5 1.8 virginica
## 139 6.0 3.0 4.8 1.8 virginica
## 140 6.9 3.1 5.4 2.1 virginica
## 141 6.7 3.1 5.6 2.4 virginica
## 142 6.9 3.1 5.1 2.3 virginica
## 143 5.8 2.7 5.1 1.9 virginica
## 144 6.8 3.2 5.9 2.3 virginica
## 145 6.7 3.3 5.7 2.5 virginica
## 146 6.7 3.0 5.2 2.3 virginica
## 147 6.3 2.5 5.0 1.9 virginica
## 148 6.5 3.0 5.2 2.0 virginica
## 149 6.2 3.4 5.4 2.3 virginica
## 150 5.9 3.0 5.1 1.8 virginica
# Logical vector subsetting
filter_logic <- iris$Sepal.Length > 5
iris[filter_logic, ]
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosa
## 11 5.4 3.7 1.5 0.2 setosa
## 15 5.8 4.0 1.2 0.2 setosa
## 16 5.7 4.4 1.5 0.4 setosa
## 17 5.4 3.9 1.3 0.4 setosa
## 18 5.1 3.5 1.4 0.3 setosa
## 19 5.7 3.8 1.7 0.3 setosa
## 20 5.1 3.8 1.5 0.3 setosa
## 21 5.4 3.4 1.7 0.2 setosa
## 22 5.1 3.7 1.5 0.4 setosa
## 24 5.1 3.3 1.7 0.5 setosa
## 28 5.2 3.5 1.5 0.2 setosa
## 29 5.2 3.4 1.4 0.2 setosa
## 32 5.4 3.4 1.5 0.4 setosa
## 33 5.2 4.1 1.5 0.1 setosa
## 34 5.5 4.2 1.4 0.2 setosa
## 37 5.5 3.5 1.3 0.2 setosa
## 40 5.1 3.4 1.5 0.2 setosa
## 45 5.1 3.8 1.9 0.4 setosa
## 47 5.1 3.8 1.6 0.2 setosa
## 49 5.3 3.7 1.5 0.2 setosa
## 51 7.0 3.2 4.7 1.4 versicolor
## 52 6.4 3.2 4.5 1.5 versicolor
## 53 6.9 3.1 4.9 1.5 versicolor
## 54 5.5 2.3 4.0 1.3 versicolor
## 55 6.5 2.8 4.6 1.5 versicolor
## 56 5.7 2.8 4.5 1.3 versicolor
## 57 6.3 3.3 4.7 1.6 versicolor
## 59 6.6 2.9 4.6 1.3 versicolor
## 60 5.2 2.7 3.9 1.4 versicolor
## 62 5.9 3.0 4.2 1.5 versicolor
## 63 6.0 2.2 4.0 1.0 versicolor
## 64 6.1 2.9 4.7 1.4 versicolor
## 65 5.6 2.9 3.6 1.3 versicolor
## 66 6.7 3.1 4.4 1.4 versicolor
## 67 5.6 3.0 4.5 1.5 versicolor
## 68 5.8 2.7 4.1 1.0 versicolor
## 69 6.2 2.2 4.5 1.5 versicolor
## 70 5.6 2.5 3.9 1.1 versicolor
## 71 5.9 3.2 4.8 1.8 versicolor
## 72 6.1 2.8 4.0 1.3 versicolor
## 73 6.3 2.5 4.9 1.5 versicolor
## 74 6.1 2.8 4.7 1.2 versicolor
## 75 6.4 2.9 4.3 1.3 versicolor
## 76 6.6 3.0 4.4 1.4 versicolor
## 77 6.8 2.8 4.8 1.4 versicolor
## 78 6.7 3.0 5.0 1.7 versicolor
## 79 6.0 2.9 4.5 1.5 versicolor
## 80 5.7 2.6 3.5 1.0 versicolor
## 81 5.5 2.4 3.8 1.1 versicolor
## 82 5.5 2.4 3.7 1.0 versicolor
## 83 5.8 2.7 3.9 1.2 versicolor
## 84 6.0 2.7 5.1 1.6 versicolor
## 85 5.4 3.0 4.5 1.5 versicolor
## 86 6.0 3.4 4.5 1.6 versicolor
## 87 6.7 3.1 4.7 1.5 versicolor
## 88 6.3 2.3 4.4 1.3 versicolor
## 89 5.6 3.0 4.1 1.3 versicolor
## 90 5.5 2.5 4.0 1.3 versicolor
## 91 5.5 2.6 4.4 1.2 versicolor
## 92 6.1 3.0 4.6 1.4 versicolor
## 93 5.8 2.6 4.0 1.2 versicolor
## 95 5.6 2.7 4.2 1.3 versicolor
## 96 5.7 3.0 4.2 1.2 versicolor
## 97 5.7 2.9 4.2 1.3 versicolor
## 98 6.2 2.9 4.3 1.3 versicolor
## 99 5.1 2.5 3.0 1.1 versicolor
## 100 5.7 2.8 4.1 1.3 versicolor
## 101 6.3 3.3 6.0 2.5 virginica
## 102 5.8 2.7 5.1 1.9 virginica
## 103 7.1 3.0 5.9 2.1 virginica
## 104 6.3 2.9 5.6 1.8 virginica
## 105 6.5 3.0 5.8 2.2 virginica
## 106 7.6 3.0 6.6 2.1 virginica
## 108 7.3 2.9 6.3 1.8 virginica
## 109 6.7 2.5 5.8 1.8 virginica
## 110 7.2 3.6 6.1 2.5 virginica
## 111 6.5 3.2 5.1 2.0 virginica
## 112 6.4 2.7 5.3 1.9 virginica
## 113 6.8 3.0 5.5 2.1 virginica
## 114 5.7 2.5 5.0 2.0 virginica
## 115 5.8 2.8 5.1 2.4 virginica
## 116 6.4 3.2 5.3 2.3 virginica
## 117 6.5 3.0 5.5 1.8 virginica
## 118 7.7 3.8 6.7 2.2 virginica
## 119 7.7 2.6 6.9 2.3 virginica
## 120 6.0 2.2 5.0 1.5 virginica
## 121 6.9 3.2 5.7 2.3 virginica
## 122 5.6 2.8 4.9 2.0 virginica
## 123 7.7 2.8 6.7 2.0 virginica
## 124 6.3 2.7 4.9 1.8 virginica
## 125 6.7 3.3 5.7 2.1 virginica
## 126 7.2 3.2 6.0 1.8 virginica
## 127 6.2 2.8 4.8 1.8 virginica
## 128 6.1 3.0 4.9 1.8 virginica
## 129 6.4 2.8 5.6 2.1 virginica
## 130 7.2 3.0 5.8 1.6 virginica
## 131 7.4 2.8 6.1 1.9 virginica
## 132 7.9 3.8 6.4 2.0 virginica
## 133 6.4 2.8 5.6 2.2 virginica
## 134 6.3 2.8 5.1 1.5 virginica
## 135 6.1 2.6 5.6 1.4 virginica
## 136 7.7 3.0 6.1 2.3 virginica
## 137 6.3 3.4 5.6 2.4 virginica
## 138 6.4 3.1 5.5 1.8 virginica
## 139 6.0 3.0 4.8 1.8 virginica
## 140 6.9 3.1 5.4 2.1 virginica
## 141 6.7 3.1 5.6 2.4 virginica
## 142 6.9 3.1 5.1 2.3 virginica
## 143 5.8 2.7 5.1 1.9 virginica
## 144 6.8 3.2 5.9 2.3 virginica
## 145 6.7 3.3 5.7 2.5 virginica
## 146 6.7 3.0 5.2 2.3 virginica
## 147 6.3 2.5 5.0 1.9 virginica
## 148 6.5 3.0 5.2 2.0 virginica
## 149 6.2 3.4 5.4 2.3 virginica
## 150 5.9 3.0 5.1 1.8 virginica
iris[iris$Species == "setosa", ]
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosa
## 7 4.6 3.4 1.4 0.3 setosa
## 8 5.0 3.4 1.5 0.2 setosa
## 9 4.4 2.9 1.4 0.2 setosa
## 10 4.9 3.1 1.5 0.1 setosa
## 11 5.4 3.7 1.5 0.2 setosa
## 12 4.8 3.4 1.6 0.2 setosa
## 13 4.8 3.0 1.4 0.1 setosa
## 14 4.3 3.0 1.1 0.1 setosa
## 15 5.8 4.0 1.2 0.2 setosa
## 16 5.7 4.4 1.5 0.4 setosa
## 17 5.4 3.9 1.3 0.4 setosa
## 18 5.1 3.5 1.4 0.3 setosa
## 19 5.7 3.8 1.7 0.3 setosa
## 20 5.1 3.8 1.5 0.3 setosa
## 21 5.4 3.4 1.7 0.2 setosa
## 22 5.1 3.7 1.5 0.4 setosa
## 23 4.6 3.6 1.0 0.2 setosa
## 24 5.1 3.3 1.7 0.5 setosa
## 25 4.8 3.4 1.9 0.2 setosa
## 26 5.0 3.0 1.6 0.2 setosa
## 27 5.0 3.4 1.6 0.4 setosa
## 28 5.2 3.5 1.5 0.2 setosa
## 29 5.2 3.4 1.4 0.2 setosa
## 30 4.7 3.2 1.6 0.2 setosa
## 31 4.8 3.1 1.6 0.2 setosa
## 32 5.4 3.4 1.5 0.4 setosa
## 33 5.2 4.1 1.5 0.1 setosa
## 34 5.5 4.2 1.4 0.2 setosa
## 35 4.9 3.1 1.5 0.2 setosa
## 36 5.0 3.2 1.2 0.2 setosa
## 37 5.5 3.5 1.3 0.2 setosa
## 38 4.9 3.6 1.4 0.1 setosa
## 39 4.4 3.0 1.3 0.2 setosa
## 40 5.1 3.4 1.5 0.2 setosa
## 41 5.0 3.5 1.3 0.3 setosa
## 42 4.5 2.3 1.3 0.3 setosa
## 43 4.4 3.2 1.3 0.2 setosa
## 44 5.0 3.5 1.6 0.6 setosa
## 45 5.1 3.8 1.9 0.4 setosa
## 46 4.8 3.0 1.4 0.3 setosa
## 47 5.1 3.8 1.6 0.2 setosa
## 48 4.6 3.2 1.4 0.2 setosa
## 49 5.3 3.7 1.5 0.2 setosa
## 50 5.0 3.3 1.4 0.2 setosa
iris[iris$Species == "setosa", c("Species", "Sepal.Length", "Petal.Width")]
## Species Sepal.Length Petal.Width
## 1 setosa 5.1 0.2
## 2 setosa 4.9 0.2
## 3 setosa 4.7 0.2
## 4 setosa 4.6 0.2
## 5 setosa 5.0 0.2
## 6 setosa 5.4 0.4
## 7 setosa 4.6 0.3
## 8 setosa 5.0 0.2
## 9 setosa 4.4 0.2
## 10 setosa 4.9 0.1
## 11 setosa 5.4 0.2
## 12 setosa 4.8 0.2
## 13 setosa 4.8 0.1
## 14 setosa 4.3 0.1
## 15 setosa 5.8 0.2
## 16 setosa 5.7 0.4
## 17 setosa 5.4 0.4
## 18 setosa 5.1 0.3
## 19 setosa 5.7 0.3
## 20 setosa 5.1 0.3
## 21 setosa 5.4 0.2
## 22 setosa 5.1 0.4
## 23 setosa 4.6 0.2
## 24 setosa 5.1 0.5
## 25 setosa 4.8 0.2
## 26 setosa 5.0 0.2
## 27 setosa 5.0 0.4
## 28 setosa 5.2 0.2
## 29 setosa 5.2 0.2
## 30 setosa 4.7 0.2
## 31 setosa 4.8 0.2
## 32 setosa 5.4 0.4
## 33 setosa 5.2 0.1
## 34 setosa 5.5 0.2
## 35 setosa 4.9 0.2
## 36 setosa 5.0 0.2
## 37 setosa 5.5 0.2
## 38 setosa 4.9 0.1
## 39 setosa 4.4 0.2
## 40 setosa 5.1 0.2
## 41 setosa 5.0 0.3
## 42 setosa 4.5 0.3
## 43 setosa 4.4 0.2
## 44 setosa 5.0 0.6
## 45 setosa 5.1 0.4
## 46 setosa 4.8 0.3
## 47 setosa 5.1 0.2
## 48 setosa 4.6 0.2
## 49 setosa 5.3 0.2
## 50 setosa 5.0 0.2
# Using subset() function
subset(iris, subset = Species == "versicolor", select = c("Sepal.Length", "Petal.Length"))
## Sepal.Length Petal.Length
## 51 7.0 4.7
## 52 6.4 4.5
## 53 6.9 4.9
## 54 5.5 4.0
## 55 6.5 4.6
## 56 5.7 4.5
## 57 6.3 4.7
## 58 4.9 3.3
## 59 6.6 4.6
## 60 5.2 3.9
## 61 5.0 3.5
## 62 5.9 4.2
## 63 6.0 4.0
## 64 6.1 4.7
## 65 5.6 3.6
## 66 6.7 4.4
## 67 5.6 4.5
## 68 5.8 4.1
## 69 6.2 4.5
## 70 5.6 3.9
## 71 5.9 4.8
## 72 6.1 4.0
## 73 6.3 4.9
## 74 6.1 4.7
## 75 6.4 4.3
## 76 6.6 4.4
## 77 6.8 4.8
## 78 6.7 5.0
## 79 6.0 4.5
## 80 5.7 3.5
## 81 5.5 3.8
## 82 5.5 3.7
## 83 5.8 3.9
## 84 6.0 5.1
## 85 5.4 4.5
## 86 6.0 4.5
## 87 6.7 4.7
## 88 6.3 4.4
## 89 5.6 4.1
## 90 5.5 4.0
## 91 5.5 4.4
## 92 6.1 4.6
## 93 5.8 4.0
## 94 5.0 3.3
## 95 5.6 4.2
## 96 5.7 4.2
## 97 5.7 4.2
## 98 6.2 4.3
## 99 5.1 3.0
## 100 5.7 4.1
# Using transform() function
iris <- transform(iris, Sepal.Ratio = Sepal.Length / Sepal.Width)
# Using within() to create and modify columns
iris_mod <- within(iris, {
log_Sepal.Length <- log(Sepal.Length)
Species <- as.factor(Species)
Petal.Ratio <- Petal.Length / Petal.Width
rm(Sepal.Width)
})
# Create a data.frame with numeric and character vectors
df_custom <- data.frame(num_col = 4:6, char_col = c("x", "y", "z"))
str(df_custom)
## 'data.frame': 3 obs. of 2 variables:
## $ num_col : int 4 5 6
## $ char_col: chr "x" "y" "z"
# Data.frame with character column as factor by default
df_factor <- data.frame(num_col = c("7", "8", "9"), char_col = c("p", "q", "r"))
str(df_factor)
## 'data.frame': 3 obs. of 2 variables:
## $ num_col : chr "7" "8" "9"
## $ char_col: chr "p" "q" "r"
# Avoid automatic conversion of characters to factors
df_no_factor <- data.frame(num_col = 4:6, char_col = c("x", "y", "z"), stringsAsFactors = FALSE)
str(df_no_factor)
## 'data.frame': 3 obs. of 2 variables:
## $ num_col : int 4 5 6
## $ char_col: chr "x" "y" "z"
# Converted all columns to character class
employee_data <- data.frame(role = c("engineer", "manager"),
salary = c(90000, 120000), age = c(28, 35))
employee_data[] <- lapply(employee_data, as.character)
str(employee_data)
## 'data.frame': 2 obs. of 3 variables:
## $ role : chr "engineer" "manager"
## $ salary: chr "90000" "120000"
## $ age : chr "28" "35"
# Converted only factor columns to character
employee_data[] <- lapply(employee_data, function(col) {
if (is.factor(col)) col <- as.character(col)
return(col)
})
# I commented out the packages to knit
#install.packages("knitr")
#install.packages("kableExtra")
library(knitr)
library(kableExtra)
# Data Frame
data_code <- data.frame(
Step = c(
"Create an empty data.frame",
"Create a data.frame with three rows and two columns",
"Check dimensions of a data.frame",
"Coerce a matrix to a data.frame",
"Subsetting rows and columns from a data.frame",
"Using subset() function",
"Using transform() function",
"Using within() to create and modify columns",
"Convert all columns to character class",
"Convert only factor columns to character"
),
Code_Snippet = c(
"structure(list(character()), class = 'data.frame')",
"structure(list(x = 10:12, y = letters[10:12]), class = 'data.frame', row.names = 1:3)",
"nrow(df)\nncol(df)\ndim(df)",
"matrix_data <- matrix(letters[4:12], nrow = 3)\nas.data.frame(matrix_data)",
"iris[1:5, c('Sepal.Length', 'Species')]\nfilter_logic <- iris$Sepal.Length > 5\niris[filter_logic, ]",
"subset(iris, subset = Species == 'versicolor', select = c('Sepal.Length', 'Petal.Length'))",
"iris <- transform(iris, Sepal.Ratio = Sepal.Length / Sepal.Width)",
"iris_mod <- within(iris, {\n log_Sepal.Length <- log(Sepal.Length)\n Petal.Ratio <- Petal.Length / Petal.Width\n rm(Sepal.Width)\n})",
"employee_data[] <- lapply(employee_data, as.character)",
"employee_data[] <- lapply(employee_data, function(col) {\n if (is.factor(col)) col <- as.character(col)\n return(col)\n})"
)
)
# Tabular table
data_code %>%
kable("html", escape = FALSE, col.names = c("Step", "Code Snippet")) %>%
kable_styling(full_width = FALSE, bootstrap_options = c("striped", "hover", "condensed")) %>%
row_spec(1, background = "#D6EAF8") %>% # Light blue for first row
row_spec(2, background = "#FAD7A0") %>% # Light orange for second row
row_spec(3, background = "#F9E79F") %>% # Light yellow for third row
row_spec(4, background = "#D5F5E3") %>% # Light green for fourth row
row_spec(5, background = "#FADBD8") %>% # Light red for fifth row
row_spec(6, background = "#EBDEF0") %>% # Light purple for sixth row
row_spec(7, background = "#FCF3CF") %>% # Light gold for seventh row
row_spec(8, background = "#AED6F1") %>% # Light sky blue for eighth row
row_spec(9, background = "#FDEBD0") %>% # Light peach for ninth row
row_spec(10, background = "#E8DAEF") %>% # Light lavender for tenth row
column_spec(1, background = "#F5B7B1") # Light coral for the first column
|
Step
|
Code Snippet
|
|
Create an empty data.frame
|
structure(list(character()), class = ‘data.frame’)
|
|
Create a data.frame with three rows and two columns
|
structure(list(x = 10:12, y = letters[10:12]), class = ‘data.frame’,
row.names = 1:3)
|
|
Check dimensions of a data.frame
|
nrow(df) ncol(df) dim(df)
|
|
Coerce a matrix to a data.frame
|
matrix_data <- matrix(letters[4:12], nrow = 3)
as.data.frame(matrix_data)
|
|
Subsetting rows and columns from a data.frame
|
iris[1:5, c(‘Sepal.Length’, ‘Species’)] filter_logic <-
iris$Sepal.Length > 5 iris[filter_logic, ]
|
|
Using subset() function
|
subset(iris, subset = Species == ‘versicolor’, select =
c(‘Sepal.Length’, ‘Petal.Length’))
|
|
Using transform() function
|
iris <- transform(iris, Sepal.Ratio = Sepal.Length / Sepal.Width)
|
|
Using within() to create and modify columns
|
iris_mod <- within(iris, { log_Sepal.Length <- log(Sepal.Length)
Petal.Ratio <- Petal.Length / Petal.Width rm(Sepal.Width) })
|
|
Convert all columns to character class
|
employee_data[] <- lapply(employee_data, as.character)
|
|
Convert only factor columns to character
|
employee_data[] <- lapply(employee_data, function(col) { if
(is.factor(col)) col <- as.character(col) return(col) })
|