library(readr)
## Reads in the Macau data.
result_assoc <- read_delim("~/Downloads/result.assoc.txt", 
    "\t", escape_double = FALSE, trim_ws = TRUE)
Parsed with column specification:
cols(
  id = col_character(),
  n = col_integer(),
  acpt_rate = col_double(),
  beta = col_double(),
  se_beta = col_double(),
  pvalue = col_double(),
  h = col_double(),
  se_h = col_double(),
  sigma2 = col_double(),
  se_sigma2 = col_double(),
  alpha0 = col_double(),
  se_alpha0 = col_double()
)
## Removes all regions with associated p-values greater than 0.05
sig.results <- result_assoc[result_assoc$pvalue <= 0.05,]
## Splits the Scaffold # and location # apart using the "-" character between them ad then saves it to colums 13 and 14
for(i in 1:nrow(sig.results))   {
  temp <- strsplit(sig.results$id[i], "-") 
  sig.results[i,13] <- temp[[1]][1]
  sig.results[i,14] <- temp[[1]][2]
  
}
temp <- rep(10, length.out = nrow(sig.results))
## Names the two columns
colnames(sig.results)[c(13,14)] <- c("Scaffold", "Loc")
## Pulls out the scaffold name, location, and h values associated with all significant DMRs
bed.test <- as.data.frame(cbind(sig.results[,13], (sig.results[,14]), (sig.results[,14]), sig.results$h))
colnames(bed.test)[4] <- "h"
write.table(bed.test, file = "bed-test.txt", sep = "\t", quote = FALSE, col.names = FALSE, row.names = FALSE)
## insert some excel wizardry here to remove the row label column and column labels so genomeCoverageBed wouldn't get mad
## FAI indexes the draft genome
system("samtools faidx Panopea_generosa-Scaff-10k.fa.txt")
## Trims out the two columns we care about from the FAI indexed file
system("cut -f 1,2 Panopea_generosa-Scaff-10k.fa.txt.fai > chrom.sizes")
## Turns the Macau DMR results in to a bedgraph
system("genomeCoverageBed -bg -trackline -i bed-test.txt -g chrom.sizes > test.bedgraph")

So the above works… mostly. For some reason the genomeCoverageBed command does not transver over the data column (of h values) to the bedgraph. To fix this, I cheated and just pulled the header from the generated bedgraph file and appended it to the original bed-text.txt file, and renamed it to bed-text.bedgraph. IGV seemed happy, though I’m still working through in my head what that actually means. It’s progress though, I think?

LS0tCnRpdGxlOiAiQmVkdG9vbHMgZXhwZXJpbWVudGF0aW9uIgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgoKYGBge3J9CmxpYnJhcnkocmVhZHIpCgojIyBSZWFkcyBpbiB0aGUgTWFjYXUgZGF0YS4KcmVzdWx0X2Fzc29jIDwtIHJlYWRfZGVsaW0oIn4vRG93bmxvYWRzL3Jlc3VsdC5hc3NvYy50eHQiLCAKICAgICJcdCIsIGVzY2FwZV9kb3VibGUgPSBGQUxTRSwgdHJpbV93cyA9IFRSVUUpCgojIyBSZW1vdmVzIGFsbCByZWdpb25zIHdpdGggYXNzb2NpYXRlZCBwLXZhbHVlcyBncmVhdGVyIHRoYW4gMC4wNQpzaWcucmVzdWx0cyA8LSByZXN1bHRfYXNzb2NbcmVzdWx0X2Fzc29jJHB2YWx1ZSA8PSAwLjA1LF0KCiMjIFNwbGl0cyB0aGUgU2NhZmZvbGQgIyBhbmQgbG9jYXRpb24gIyBhcGFydCB1c2luZyB0aGUgIi0iIGNoYXJhY3RlciBiZXR3ZWVuIHRoZW0gYWQgdGhlbiBzYXZlcyBpdCB0byBjb2x1bXMgMTMgYW5kIDE0CmZvcihpIGluIDE6bnJvdyhzaWcucmVzdWx0cykpICAgewogIHRlbXAgPC0gc3Ryc3BsaXQoc2lnLnJlc3VsdHMkaWRbaV0sICItIikgCiAgc2lnLnJlc3VsdHNbaSwxM10gPC0gdGVtcFtbMV1dWzFdCiAgc2lnLnJlc3VsdHNbaSwxNF0gPC0gdGVtcFtbMV1dWzJdCiAgCn0KdGVtcCA8LSByZXAoMTAsIGxlbmd0aC5vdXQgPSBucm93KHNpZy5yZXN1bHRzKSkKIyMgTmFtZXMgdGhlIHR3byBjb2x1bW5zCmNvbG5hbWVzKHNpZy5yZXN1bHRzKVtjKDEzLDE0KV0gPC0gYygiU2NhZmZvbGQiLCAiTG9jIikKCiMjIFB1bGxzIG91dCB0aGUgc2NhZmZvbGQgbmFtZSwgbG9jYXRpb24sIGFuZCBoIHZhbHVlcyBhc3NvY2lhdGVkIHdpdGggYWxsIHNpZ25pZmljYW50IERNUnMKYmVkLnRlc3QgPC0gYXMuZGF0YS5mcmFtZShjYmluZChzaWcucmVzdWx0c1ssMTNdLCAoc2lnLnJlc3VsdHNbLDE0XSksIChzaWcucmVzdWx0c1ssMTRdKSwgc2lnLnJlc3VsdHMkaCkpCmNvbG5hbWVzKGJlZC50ZXN0KVs0XSA8LSAiaCIKCndyaXRlLnRhYmxlKGJlZC50ZXN0LCBmaWxlID0gImJlZC10ZXN0LnR4dCIsIHNlcCA9ICJcdCIsIHF1b3RlID0gRkFMU0UsIGNvbC5uYW1lcyA9IEZBTFNFLCByb3cubmFtZXMgPSBGQUxTRSkKCiMjIGluc2VydCBzb21lIGV4Y2VsIHdpemFyZHJ5IGhlcmUgdG8gcmVtb3ZlIHRoZSByb3cgbGFiZWwgY29sdW1uIGFuZCBjb2x1bW4gbGFiZWxzIHNvIGdlbm9tZUNvdmVyYWdlQmVkIHdvdWxkbid0IGdldCBtYWQKCiMjIEZBSSBpbmRleGVzIHRoZSBkcmFmdCBnZW5vbWUKc3lzdGVtKCJzYW10b29scyBmYWlkeCBQYW5vcGVhX2dlbmVyb3NhLVNjYWZmLTEway5mYS50eHQiKQoKIyMgVHJpbXMgb3V0IHRoZSB0d28gY29sdW1ucyB3ZSBjYXJlIGFib3V0IGZyb20gdGhlIEZBSSBpbmRleGVkIGZpbGUKc3lzdGVtKCJjdXQgLWYgMSwyIFBhbm9wZWFfZ2VuZXJvc2EtU2NhZmYtMTBrLmZhLnR4dC5mYWkgPiBjaHJvbS5zaXplcyIpCgojIyBUdXJucyB0aGUgTWFjYXUgRE1SIHJlc3VsdHMgaW4gdG8gYSBiZWRncmFwaApzeXN0ZW0oImdlbm9tZUNvdmVyYWdlQmVkIC1iZyAtdHJhY2tsaW5lIC1pIGJlZC10ZXN0LnR4dCAtZyBjaHJvbS5zaXplcyA+IHRlc3QyLmJlZGdyYXBoIikKYGBgCgpTbyB0aGUgYWJvdmUgd29ya3MuLi4gbW9zdGx5LiBGb3Igc29tZSByZWFzb24gdGhlIGdlbm9tZUNvdmVyYWdlQmVkIGNvbW1hbmQgZG9lcyBub3QgdHJhbnN2ZXIgb3ZlciB0aGUgZGF0YSBjb2x1bW4gKG9mIGggdmFsdWVzKSB0byB0aGUgYmVkZ3JhcGguIFRvIGZpeCB0aGlzLCBJIGNoZWF0ZWQgYW5kIGp1c3QgcHVsbGVkIHRoZSBoZWFkZXIgZnJvbSB0aGUgZ2VuZXJhdGVkIGJlZGdyYXBoIGZpbGUgYW5kIGFwcGVuZGVkIGl0IHRvIHRoZSBvcmlnaW5hbCBiZWQtdGV4dC50eHQgZmlsZSwgYW5kIHJlbmFtZWQgaXQgdG8gYmVkLXRleHQuYmVkZ3JhcGguIElHViBzZWVtZWQgaGFwcHksIHRob3VnaCBJJ20gc3RpbGwgd29ya2luZyB0aHJvdWdoIGluIG15IGhlYWQgd2hhdCB0aGF0IGFjdHVhbGx5IG1lYW5zLiBJdCdzIHByb2dyZXNzIHRob3VnaCwgSSB0aGluaz8K