Open In App

Transpose In R

Last Updated : 17 Apr, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will discuss what is Transpose and perform Transpose operations on a matrix and data frame in R Programming Language.

What is Transpose?

Transpose is a fundamental operation in linear algebra and data manipulation that involves flipping the rows and columns of a matrix or a data frame. In R programming, the transpose function allows you to achieve this transformation easily. In this article, we will explore how to transpose matrices and data frames in R, along with examples to illustrate its usage.

Transpose of a Matrix

In R, you can transpose a matrix using the t() function. The t() function returns the transpose of the given matrix.

R
# Create a matrix
mat <- matrix(1:9, nrow = 3)
# Transpose the matrix
transposed_mat <- t(mat)
# Print the original and transposed matrices
print("Original Matrix:")
print(mat)
print("Transposed Matrix:")
print(transposed_mat)

Output:

[1] "Original Matrix:"

     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9

[1] "Transposed Matrix:"

     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    4    5    6
[3,]    7    8    9

Transpose of the array

We can transpose an array in R using the t() function. This function is primarily used for matrices, but it also works for data frames and arrays.

R
# Create an array
arr <- array(1:12, dim = c(3, 4))

# Print the original array
print(arr)

# Transpose the array
transposed_arr <- t(arr)

# Print the transposed array
print(transposed_arr)

Output:

     [,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12

[,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
[4,] 10 11 12

Transpose of a Data Frame

Similarly, you can transpose a data frame using the t() function. However, transposing a data frame often requires additional steps to ensure the desired structure is maintained.

R
# Create a data frame
df <- data.frame(
  Name = c("John", "Alice", "Bob"),
  Age = c(30, 25, 35),
  Score = c(80, 90, 75)
)
# Transpose the data frame
transposed_df <- as.data.frame(t(df))

# Rename the columns
colnames(transposed_df) <- df$Name
# Remove the first row (original column names)
transposed_df <- transposed_df[-1,]

# Print the original and transposed data frames
print("Original Data Frame:")
print(df)

print("Transposed Data Frame:")
print(transposed_df)

Output:

[1] "Original Data Frame:"
   Name Age Score
1 Johny  30    80
2   Ali  25    90
3  Boby  35    75

[1] "Transposed Data Frame:"
      Johny Ali Boby
Age      30  25   35
Score    80  90   75

Conclusion

Transpose is a useful operation in R programming for rearranging data structures like matrices and data frames. By using the t() function, you can easily flip the rows and columns of your data. Whether you’re working with numerical data or datasets containing observations and variables, knowing how to transpose your data can simplify your analysis and manipulation tasks.


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads