Duplicate a column in data frame and rename it to another column name
Answered with help of user @thelatemail.
df = read.table(sep="",
header=T,
text="Name Age Rate
Aira 23 90
Ben 32 98
Cat 27 95")
df$Rate2 = df$Rate #create column 'Rate2' and make it equal to 'Rate' (duplicate).
Another option to duplicate, triplicate or 'n plicate':
#use ?replicate function, which replicates elements over vectors and lists.
n = 3 #replicate 3 new columns
df3 = cbind(df, replicate(n,df$Rate)) #replicate from column "Rate" in the df object
df3 #plot df3 output
Name Age Rate 1 2 3
1 Aira 23 90 90 90 90
2 Ben 32 98 98 98 98
3 Cat 27 95 95 95 95
Replication (making a copy) of a column via dplyr
is achieved using mutate
:
df <- data.frame(
Name = c('Aira', 'Ben', 'Cat'),
Age = c(23, 32, 27),
Rate = c(90, 98, 95)
)
df <- df %>%
mutate(Rate2 = Rate)
# Name Age Rate Rate2
# 1 Aira 23 90 90
# 2 Ben 32 98 98
# 3 Cat 27 95 95