library(tidyverse)
CD <- "Nina-Feces Pool-CD.xlsx" %>% readxl::read_xlsx(1)
TF <- "Stool3_Pool_Data-TF.csv" %>% read.csv() %>% t() %>% data.frame()
colnames(TF) <- TF[1,]
TF <- TF[2:nrow(TF),]

colnames(CD) <- CD %>% colnames() %>% str_remove("Area: ") %>% str_remove(".raw.*")

Number of equal names(naive) metabolites

intersect(CD$Name, TF %>% rownames()) %>% length()
[1] 37
long_CD <- 
CD %>% pivot_longer(cols = 6:ncol(CD), names_to = "sample", values_to = "intensityCD")
long_CD$samplename <- paste0(long_CD$sample, "_", long_CD$Name)

long_TF <- 
  TF %>% rownames_to_column("Name") %>% 
  pivot_longer(cols = 2:ncol(TF), names_to = "sample", values_to = "intensityTF")
long_TF$samplename <- paste0(long_TF$sample, "_", long_TF$Name)
long_TF$intensityTF <- long_TF$intensityTF %>% as.numeric()

big_table <- 
  inner_join(long_CD, long_TF, by = "samplename")

Big picture correlation

big_table %>% ggplot(aes(x = intensityCD, y = intensityTF)) +
  geom_point()

Corelation by sample

big_table %>% group_by(sample.x) %>% 
  summarise(R=cor(intensityCD, intensityTF))%>% 
  ggplot(aes(sample.x, R)) + 
  geom_col() + 
  theme_classic()

Corelation by Metabolites

big_table %>% group_by(Name.x) %>% 
  summarise(R=cor(intensityCD, intensityTF)) %>% 
  ggplot(aes(Name.x, R)) + 
  geom_col() + 
  theme_classic() + 
  theme(axis.text.x = element_text(angle = -45, hjust = 0))

big_table %>% 
  filter(intensityCD > 8e7) %>% 
  filter(intensityTF > 1e7) %>% 
  ggplot(aes(x = intensityCD, y = intensityTF)) +
  geom_point()

big_table %>% group_by(sample.x) %>% 
  filter(intensityCD > 8e7) %>% 
  filter(intensityTF > 1e7) %>% 
  summarise(R=cor(intensityCD, intensityTF))%>% 
  ggplot(aes(sample.x, R)) + 
  geom_col() + 
  theme_classic()

big_table %>% group_by(Name.x) %>% 
    filter(intensityCD > 8e7) %>% 
  filter(intensityTF > 1e7) %>% 
  summarise(R=cor(intensityCD, intensityTF), medianCD=median(intensityCD), medianTF=median(intensityTF)) %>% 
  pivot_longer(cols = c(medianCD, medianTF), names_to = 'metric', values_to = "val") %>% 
  ggplot(aes(Name.x, val, fill = metric, alpha = R)) + 
  geom_col(position = "dodge") +
  # theme_classic() + 
  theme(axis.text.x = element_text(angle = -45, hjust = 0))

LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKCmBgYHtyfQpsaWJyYXJ5KHRpZHl2ZXJzZSkKQ0QgPC0gIk5pbmEtRmVjZXMgUG9vbC1DRC54bHN4IiAlPiUgcmVhZHhsOjpyZWFkX3hsc3goMSkKVEYgPC0gIlN0b29sM19Qb29sX0RhdGEtVEYuY3N2IiAlPiUgcmVhZC5jc3YoKSAlPiUgdCgpICU+JSBkYXRhLmZyYW1lKCkKY29sbmFtZXMoVEYpIDwtIFRGWzEsXQpURiA8LSBURlsyOm5yb3coVEYpLF0KCmNvbG5hbWVzKENEKSA8LSBDRCAlPiUgY29sbmFtZXMoKSAlPiUgc3RyX3JlbW92ZSgiQXJlYTogIikgJT4lIHN0cl9yZW1vdmUoIi5yYXcuKiIpCgpgYGAKCiMjIE51bWJlciBvZiBlcXVhbCBuYW1lcyhuYWl2ZSkgbWV0YWJvbGl0ZXMKYGBge3J9CmludGVyc2VjdChDRCROYW1lLCBURiAlPiUgcm93bmFtZXMoKSkgJT4lIGxlbmd0aCgpCmBgYAoKYGBge3J9CmxvbmdfQ0QgPC0gCkNEICU+JSBwaXZvdF9sb25nZXIoY29scyA9IDY6bmNvbChDRCksIG5hbWVzX3RvID0gInNhbXBsZSIsIHZhbHVlc190byA9ICJpbnRlbnNpdHlDRCIpCmxvbmdfQ0Qkc2FtcGxlbmFtZSA8LSBwYXN0ZTAobG9uZ19DRCRzYW1wbGUsICJfIiwgbG9uZ19DRCROYW1lKQoKbG9uZ19URiA8LSAKICBURiAlPiUgcm93bmFtZXNfdG9fY29sdW1uKCJOYW1lIikgJT4lIAogIHBpdm90X2xvbmdlcihjb2xzID0gMjpuY29sKFRGKSwgbmFtZXNfdG8gPSAic2FtcGxlIiwgdmFsdWVzX3RvID0gImludGVuc2l0eVRGIikKbG9uZ19URiRzYW1wbGVuYW1lIDwtIHBhc3RlMChsb25nX1RGJHNhbXBsZSwgIl8iLCBsb25nX1RGJE5hbWUpCmxvbmdfVEYkaW50ZW5zaXR5VEYgPC0gbG9uZ19URiRpbnRlbnNpdHlURiAlPiUgYXMubnVtZXJpYygpCgpiaWdfdGFibGUgPC0gCiAgaW5uZXJfam9pbihsb25nX0NELCBsb25nX1RGLCBieSA9ICJzYW1wbGVuYW1lIikKYGBgCgojIyBCaWcgcGljdHVyZSBjb3JyZWxhdGlvbgpgYGB7cn0KYmlnX3RhYmxlICU+JSBnZ3Bsb3QoYWVzKHggPSBpbnRlbnNpdHlDRCwgeSA9IGludGVuc2l0eVRGKSkgKwogIGdlb21fcG9pbnQoKQpgYGAKIyMgQ29yZWxhdGlvbiBieSBzYW1wbGUKYGBge3J9CmJpZ190YWJsZSAlPiUgZ3JvdXBfYnkoc2FtcGxlLngpICU+JSAKICBzdW1tYXJpc2UoUj1jb3IoaW50ZW5zaXR5Q0QsIGludGVuc2l0eVRGKSklPiUgCiAgZ2dwbG90KGFlcyhzYW1wbGUueCwgUikpICsgCiAgZ2VvbV9jb2woKSArIAogIHRoZW1lX2NsYXNzaWMoKQoKYGBgCiMjIENvcmVsYXRpb24gYnkgTWV0YWJvbGl0ZXMKYGBge3J9CmJpZ190YWJsZSAlPiUgZ3JvdXBfYnkoTmFtZS54KSAlPiUgCiAgc3VtbWFyaXNlKFI9Y29yKGludGVuc2l0eUNELCBpbnRlbnNpdHlURikpICU+JSAKICBnZ3Bsb3QoYWVzKE5hbWUueCwgUikpICsgCiAgZ2VvbV9jb2woKSArIAogIHRoZW1lX2NsYXNzaWMoKSArIAogIHRoZW1lKGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gLTQ1LCBoanVzdCA9IDApKQpgYGAKCmBgYHtyfQpiaWdfdGFibGUgJT4lIAogIGZpbHRlcihpbnRlbnNpdHlDRCA+IDhlNykgJT4lIAogIGZpbHRlcihpbnRlbnNpdHlURiA+IDFlNykgJT4lIAogIGdncGxvdChhZXMoeCA9IGludGVuc2l0eUNELCB5ID0gaW50ZW5zaXR5VEYpKSArCiAgZ2VvbV9wb2ludCgpCmBgYAoKYGBge3J9CmJpZ190YWJsZSAlPiUgZ3JvdXBfYnkoc2FtcGxlLngpICU+JSAKICBmaWx0ZXIoaW50ZW5zaXR5Q0QgPiA4ZTcpICU+JSAKICBmaWx0ZXIoaW50ZW5zaXR5VEYgPiAxZTcpICU+JSAKICBzdW1tYXJpc2UoUj1jb3IoaW50ZW5zaXR5Q0QsIGludGVuc2l0eVRGKSklPiUgCiAgZ2dwbG90KGFlcyhzYW1wbGUueCwgUikpICsgCiAgZ2VvbV9jb2woKSArIAogIHRoZW1lX2NsYXNzaWMoKQoKYGBgCgpgYGB7cn0KYmlnX3RhYmxlICU+JSBncm91cF9ieShOYW1lLngpICU+JSAKICAgIGZpbHRlcihpbnRlbnNpdHlDRCA+IDhlNykgJT4lIAogIGZpbHRlcihpbnRlbnNpdHlURiA+IDFlNykgJT4lIAogIHN1bW1hcmlzZShSPWNvcihpbnRlbnNpdHlDRCwgaW50ZW5zaXR5VEYpLCBtZWRpYW5DRD1tZWRpYW4oaW50ZW5zaXR5Q0QpLCBtZWRpYW5URj1tZWRpYW4oaW50ZW5zaXR5VEYpKSAlPiUgCiAgcGl2b3RfbG9uZ2VyKGNvbHMgPSBjKG1lZGlhbkNELCBtZWRpYW5URiksIG5hbWVzX3RvID0gJ21ldHJpYycsIHZhbHVlc190byA9ICJ2YWwiKSAlPiUgCiAgZ2dwbG90KGFlcyhOYW1lLngsIHZhbCwgZmlsbCA9IG1ldHJpYywgYWxwaGEgPSBSKSkgKyAKICBnZW9tX2NvbChwb3NpdGlvbiA9ICJkb2RnZSIpICsKICAjIHRoZW1lX2NsYXNzaWMoKSArIAogIHRoZW1lKGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gLTQ1LCBoanVzdCA9IDApKQpgYGA=