Reputation: 1
I have a dataset and I would like to copy the value of a specific cell on the first column.
Let's see if I can clarify it enough in an example.
High Master Protein Q8WHN2
Checked Confidence Annotated Sequence
FALSE High [K].GWSVNIEYTDDPHPR.[N]
FALSE High [R].LTQGTFSFLPDLTDDQISK.[Q]
FALSE High [-].MRLTQGTFSFLPDLTDDQISK.[Q]
High Master Protein A0A345UA09
Checked Confidence Annotated Sequence
FALSE High [R].DGEIILR.[Y]
FALSE High [R].DGEIILRYVSYSLLAGDPSVLEDR.[C]
FALSE High [-].MIDAFSR.[VIT]
FALSE High [R].YVSYSLLAGDPSVLEDR.[C]
and I would like it to become:
High Master Protein Q8WHN2
Checked Confidence Annotated Sequence
Q8WHN2 High [K].GWSVNIEYTDDPHPR.[N]
Q8WHN2 High [R].LTQGTFSFLPDLTDDQISK.[Q]
Q8WHN2 High [-].MRLTQGTFSFLPDLTDDQISK.[Q]
High Master Protein A0A345UA09
Checked Confidence Annotated Sequence
A0A345UA09 High [R].DGEIILR.[Y]
A0A345UA09 High [R].DGEIILRYVSYSLLAGDPSVLEDR.[C]
A0A345UA09 High [-].MIDAFSR.[VIT]
A0A345UA09 High [R].YVSYSLLAGDPSVLEDR.[C]
So basically replace "FALSE" in col 1 with the value in row 1 col 3
Hopefully you have enough information.
Upvotes: 0
Views: 158
Reputation: 5456
Note that your column names will not be V1-V3, so you have to modify the code accordingly:
library(tidyverse)
d <- read.table(text = "High 'Master Protein' Q8WHN2
Checked Confidence 'Annotated Sequence'
FALSE High [K].GWSVNIEYTDDPHPR.[N]
FALSE High [R].LTQGTFSFLPDLTDDQISK.[Q]
FALSE High [-].MRLTQGTFSFLPDLTDDQISK.[Q]
High 'Master Protein' A0A345UA09
Checked Confidence 'Annotated Sequence'
FALSE High [R].DGEIILR.[Y]
FALSE High [R].DGEIILRYVSYSLLAGDPSVLEDR.[C]
FALSE High [-].MIDAFSR.[VIT]
FALSE High [R].YVSYSLLAGDPSVLEDR.[C]")
d %>%
mutate(my_fill = if_else(str_detect(V3, "\\[") | V3 == "Annotated Sequence", as.character(NA), V3),
V1 = if_else(!V1 %in% c("High", "Checked"), as.character(NA), V1)) %>%
fill(my_fill,.direction = "down") %>%
mutate(V1 = if_else(is.na(V1), my_fill, V1)) %>%
select(-my_fill)
# V1 V2 V3
# 1 High Master Protein Q8WHN2
# 2 Checked Confidence Annotated Sequence
# 3 Q8WHN2 High [K].GWSVNIEYTDDPHPR.[N]
# 4 Q8WHN2 High [R].LTQGTFSFLPDLTDDQISK.[Q]
# 5 Q8WHN2 High [-].MRLTQGTFSFLPDLTDDQISK.[Q]
# 6 High Master Protein A0A345UA09
# 7 Checked Confidence Annotated Sequence
# 8 A0A345UA09 High [R].DGEIILR.[Y]
# 9 A0A345UA09 High [R].DGEIILRYVSYSLLAGDPSVLEDR.[C]
# 10 A0A345UA09 High [-].MIDAFSR.[VIT]
# 11 A0A345UA09 High [R].YVSYSLLAGDPSVLEDR.[C]
Upvotes: 1