Laura’s Notebook: SRM data – quantfying tech. rep. quality

Today I figured out how to calculate distances between tech reps on the NMDS plot to numerically validate my removal of poor-quality reps. I ended up removing a few more reps (as compared to visually inspecting reps), but as a whole not much has changed. I also generated a couple plots using Plotly, which is fantastic. Plotly creates interactive plots so you can hover over points, zoom into a plot, etc.

Here is a plot of my technical replicate NMDS:

tech rep

If you download this file and drag into your browser you can view it in Plotly: tech rep plotly (couldn’t quickly figure out how to render Plotly in my notebook; if you know how please let me know in comments!)

R script written to calculate euclidian distances between technical replicates on NMDS & plot via Plotly:

 #### Calculate distances between tech rep points on NMDS plot and plot to ID technical rep outliers library(reshape2) <- NULL for(i in 1:length(SRMsamples)) { G <- SRMsamples[i] D <- dist(SRM.nmds.samples.sorted[grepl(G, rownames(SRM.nmds.samples.sorted)),], method="euclidian") M <- melt(as.matrix(D), varnames = c("row", "col")) <- rbind(, M) } <-[!$value == 0,] #remove rows with value=0 (distance between same points)[,1:2] <- apply([,1:2], 2, function(y) gsub('G|G0|G00', '', y)) #remove extraneous "G00" from point names library(ggplot2) library(plotly) p1 <- plot_ly(, y=~value, type="scatter", mode="text", text=~row) htmlwidgets::saveWidget(as_widget(p1), "NMDS-technical-replicate-distances.html") summary($value) <-[$value>.2,] #which tech rep distances are >0.2 View(  

Resulting “” were determined as distances >0.2 on NMDS plot/scale. This standard is still not good enough for publication; need to investigate NMDS stats to see if there is a sd, variance, or something that I can use to validate my 0.2 selection.
bad tech reps combinations >0.2

Plot of technical rep distances using Plotly: tech rep distances plotly

from LabNotebook


Yaamini’s Notebook: Correlating Technical Replicates Part 2

Step 1: R-squared Cutoffs

In this R script, I used three different R-squared cutoffs to weed out transitions and reexamine my technical replication. I tried the combinations of normalized and nonnormalized data with different cutoffs. I made NMDS plots for each option and calculated the distances between my technical replicates.

Cutoff = 0.6, nonnormalized data:



Cutoff = 0.6, normalized data:



Cutoff = 0.7, nonnormalized data:



Cutoff = 0.7, normalized data:



Cutoff = 0.8, normalized data:



I found that normalizing my data made my NMDS plots look better, so I didn’t use an 0.8 cutoff with nonnormalized data. Overall, my NMDS plots looked better, but they’re still not fantastic. With a 0.6 cutoff, I had 88 transitions, 45 with a 0.7 cuttoff, and 17 with a 0.8 cutoff. I personally think the 0.7 cutoff is a happy medium between losing too much data on proteins and a better NMDS plot. I still need to try the x = y slope method outlined in this issue. For now I’ll update Emma and Steven and see what they think.


Laura’s Notebook: Cleaning day – rinsing Olys and cleaning OA system

It’s been 1 week since I moved my Oly seed to the dock; today I checked on them to ensure the screen envelopes are still secured and to rinse them with fresh water. Everything was still in place and the screen wasn’t too dirty, so I’ll wait ~10 days to 2 weeks to return. I also tagged the Oly cages 92. NOTE: there are three cages hanging together on 92; my Oly broodstock and some of Yaamini’s gigas are in 2 cages, and my Oly seed are in the other.

OlyTag92OlyCages92Seed PacketsSeed Packets

I also cleaned up the OA space in the hatchery and distributed the various materials that were sitting back there. Next time I go out I need to clean various tubes that are soaking in bleach, but after that I won’t need to tend that space again until we use it again.


from LabNotebook

Yaamini’s Notebook: Correlating Technical Replicates

Are some transitions worse than others?

Short answer: Yes.

Long answer: Emma suggested that I regress my second batch of technical replicates against my first batch to see if there were certain transitions that are messier than others. I used this R script to plot the regressions. The final plots can be found in this folder.

*Random gold star moment 1: My for loop for making all my plots worked the first time I wrote it #WIN * *Random gold star moment 2: I used a relative path to set my working directory #LEARNING *

I added the adjusted R-squared value to the top left corner of each plot. There are definitely potential outliers and leverage points in each plot, and some transitions have higher R-squared than others. I also see that some samples are continually those potential outliers and leverage points. Generally, the three transitions associated with each peptide have the same R-squared values.


Figure 1. Transition with the lowest adjusted R-squared value.


Figure 2. Transition with one of the higher adjusted R-squared values.

The next step is to consult Emma and Steven to create a selection criteria. Here are two ideas:

  • Establish an R-squared cutoff. Any transitions with adjusted R-squared values lower than the cutoff should be eliminated.
  • Identify outliers and leverage points in each plot. Remove these points and re-plot to see if the R-squared value increases.

My guess is that we’ll use some combination of methods to determine which transitions to keep. While I work on this, I’m also reviewing my SRM protocol for reproducibility and making an NMDS plot with just the PRTC peptides to see if that provides us with any additional information.


Yaamini’s Notebook: Reproducible SRM Analysis

R&R: Review and Reproduce

Last week, I created a workflow for reproducing my SRM data and analyses. Steven went through the pipeline as much as he could and posted the following issues:

  1. Opening new Skyline file

I forgot to use the specifif verbage Skyline does! I asked the user to open a new Skyline document, which is the same as opening a blank document.

  1. Source of .blib?

Emma and her team made the .blib I used for my DIA and SRM analyses, but I did not explain how I got the file. I added the explanation Emma gave me, as well as a link to my original lab notebook entry with this information.

  1. Provide brief explanation of major steps

Because I guess it makes sense to let the user know what they’re doing and why they’re doing it…

  1. Fail at step 2d

Whoops. Skyline requires a FASTA file, but I linked a .txt file with the same information. On the Windows machine I found the corresponding FASTA file and uploaded it to owl. I also fixed the link in the protocol. When I tried following my instructions to populate the analyte tree (Step 2d), copying and pasting the sequence information did not work! Skyline daily has been kind of annoying with this in the past. To make things easier, I updated the instructions so the user would only have to import the file, not open and copy and paste sequences with varying levels of success.

Clearly no matter how explicit I think my instructions are, it’s always different when other people look at it! Laura and Grace are going to continue going through my protocol. Hopefully they catch something I didn’t and we figure out why my technical replication is funky.


Laura’s Notebook: Moved Olympia oyster seed to Manchester dock

My post-set Oly’s have been housed in upwelling silos in a tank at Manchester, fed algae produced by PSRF, since July. It’s time to get them out of there, since PSRF is really only producing algae for me, and they have potential plans to turn the water off for re-plumbing projects, etc. My task for today is to move the oysters to cages hanging off the dock.

Step 1) Acclimate Olys to ambient water temperature

Since settlement the Oly tank has had the heated water line, which is ~14degC, and warms up to ~16 in the tank. The ambient line is ~13degC, so the temperature off the dock will be around 13degC (~55degF). Last Thursday, to acclimate the Olys to the slightly cooler water temperature, I cracked the ambient line open a bit, and turned the heated line down. On Monday Stuart increased the ambient line flow and turned the heated line off.

Step 2) Build envelopes to house separate Oly groups

I have 21 Oly groups, and need to keep them separate. I built envelopes in 2 mesh sizes: ~1600um (window screen), 450um. Some groups’ oysters have grown large enough to safely fit in ~1600um window screen, while some still have a few that are very small. Stuart advises that these small oysters will not likely make it through the winter, and growth will be minimal off the dock, since available algae is low starting in October. I’m going to give the small guys a chance, and will check them in early November to see if they have grown large enough to transition them to larger screen. If not, I may have to cull them, since the fine mesh size requires regular cleaning.

Step 3) Screen oysters to determine envelope size needed, add to envelope

I screened my oysters first through 1600, catching anything that fell through on 450. If no oysters fell through I put them into the 1600 window screen. Created tags using pieces of pvc pipe with black sharpie labels. Will need to keep an eye on condition of tags. Then using the impuse sealer I closed the envelopes, and gave the oysters a last meal while I prepared the rest of the envelopes.

Making many envelopes took time. Here are images of the almost-final product, where oysters+tag (pvc piece labeled w/ sharpie) are in an envelope and I am using the impulse sealer to close the open end of the bag. Pro tip: when using the impuse sealer on mesh, press and hold until the red light turns off, continue to hold down for a few seconds to let the newly melted plastic cool. If you release right away, you will likely tear a hole in the envelope.


Step 4) Move oyster envelopes to dock

There are 3 cages already hanging off the dock with my Oly broodstock (and a few Pacifics). I zip-tied the Oly packages to the inside of one cage, laying the most dense groups down flat. I’ll grap a photo of the setup next week when I go out to clean.

from LabNotebook

Yaamini’s Notebook: October Goals

October Goals

screen shot 2017-10-02 at 1 39 40 pm

September Goals Recap:

  • I presented a preliminary analysis of my SRM data at PCSGA!
  • The DNR paper got split into two separate papers. I added SRM methods to the oyster paper but have not updated any SRM results. The associated repository can be found here.
  • Steven suggested not revising the proposal, so I didn’t
  • I sent an email to schedule my first committee for the end of October/beginning of November. To prepare for my meeting, I cleaned up the project-oyster-oa repo. The repository has very clear README files and project/file descriptions!

October Goals:

This month is all about the DNR project!

  • Figure out what happened with my technical replicates
  • Revise the oyster paper introduction and methods, start writing results and discussion
  • Submit a NSF GRFP proposal
  • Have my committee meeting and submit milestone paperwork
  • Prepare for WSN
  • Low priority: Metaanalysis and Manchester
    • I can start reviewing papers and writing an introduction. If there are any interesting questions I think we should tackle with the dataset, then I can consult with Steven and start analyses
    • Analyze histology images