# Create the data frame x <- data.frame(Room = c("Q", "R", "S"), Area = c(2, 4, 6)) y <- data.frame(Hour = c("H1", "H2", "H3"), Temp = c(8, 10, 12)) # Convert factor columns to numeric x$Area <- as.numeric(as.character(x$Area)) # Add new columns with names same as "Room" column in data frame x for(i in 1:nrow(x)) { y[, x$Room[i]] <- y$Temp * x$Area[i] } # View the data frame y