i need to use an R script to replace barcodes in a column of an existing dataframe retroactively using a pattern of barcodes generated in a separate dataframe. Easier to give an example:
tubeList <- data.frame(Barcode = c(1:20),
sampleType = c("a", "a", "a", "a",
"b", "b", "b", "b",
"c", "c", "c", "c",
"d", "d", "d", "d",
"e", "e", "e", "e")
)
combo <- data.frame(Barcode_1 = c("1", "1", "1", "1", "1",
"2", "2", "2", "2", "2",
"3", "3", "3", "3", "3",
"4", "4", "4", "4", "4",
"5", "5", "5", "5", "5"),
SampleName_1 = c("a", "a", "a", "a", "a", "a", "a", "a", "a", "a",
"b", "b", "b", "b", "b", "b", "b", "b", "b", "b",
"c", "c", "c", "c", "c", "c", "c", "c", "c", "c",
"d", "d", "d", "d", "d", "d", "d", "d", "d", "d",
"e", "e", "e", "e", "e", "e", "e", "e", "e", "e")
)
I need to replace the barcodes in the Barcode_1 column of combo so that they repeat the same pattern the barcodes follow in the Barcode column of tubeList if the SampleName_1 column of combo matches the sampleType column of tubeList, and keep repeating the pattern from tubeList until all the SampleName_1 in combo have a new associated barcode in the Barcode_1 column.
This is what the ideal output would look like:
comboReplaced <- data.frame(Barcode_1 = c("1", "2", "3", "4", "1", "2", "3", "4", "1", "2",
"5", "6", "7", "8", "5", "6", "7", "8", "5", "6",
"9", "10", "11", "12", "9", "10", "11", "12", "9", "10",
"13", "14", "15", "16", "13", "14", "15", "16", "13", "14",
"17", "18", "19", "20", "17", "18", "19", "20", "17", "18"),
SampleName_1 = c("a", "a", "a", "a", "a", "a", "a", "a", "a", "a",
"b", "b", "b", "b", "b", "b", "b", "b", "b", "b",
"c", "c", "c", "c", "c", "c", "c", "c", "c", "c",
"d", "d", "d", "d", "d", "d", "d", "d", "d", "d",
"e", "e", "e", "e", "e", "e", "e", "e", "e", "e")
)
Thank you!
Aucun commentaire:
Enregistrer un commentaire