Fitting dose response curves

What tools do you normally use (outside of Julia) ?

I did most of my dissertation work in R, particularly using the DRC package. I also did some simulations estimating LC50 using GLM in R, both in a frequentist and a Bayesian approaches. I only started using Julia after my PhD, when I had time to try and learn something new.

Thanks. I will try it tomorrow.

@alejandromerchan I think you are right that a dedicated package would make things easier for casual users. On the other hand, as the tools are obviously already existing, it might just be easier to write up some tutorials or extend the present ones.

Especially with Julia v1.0 knocking at the door, this step might help some new users, who have no extensive experience in programming. As I wrote in the beginning, some of the documentation is very technical and somewhat difficult to understand (at least for me). Most of the examples seemed to me rather specialised, but maybe I am just coming from the “wrong” field of work. Altogether, I had the feeling that the documentation was written for other developers or users with long-time experience in R, MatLab or similar statistical/mathematical programming languages.

But then again, there’s this nice community here, that helped me fast. Thank you, all of you!

Currently, I mainly use Excel (to prepare my data and do simple corrections, like substract background values), and Origin for Curve fitting and statistics.

I have also used GraphPad Prism for a while (mainly for statistics).

Interesting, good to know. This is the one you’re talking about right ? https://www.originlab.com/index.aspx?go=Products/Origin/DataAnalysis/CurveFitting

I don’t have much experience with commercial software for dose response analysis, because I’ve always gravitated towards open source and had a good background in R when I started analyzing that type of data. I guess tutorials could be a good compromise, without the pain of developing a package.

@pkofod Exactly. Here’s an overview of their sigmoidal fitting algorithms: https://www.originlab.com/index.aspx?go=Solutions/Applications/Pharmacology#Dose-Response Analysis (there’s problem with the link: They put a blank in the URL between “Response” and “Analysis”. One has to append it manually.)

@alejandromerchan The lab where I did my PhD had the commercial software available and used for a long time. I only recently had to start watching out for alternatives.

That is certainly within the realm of LsqFit. There’s a long way to a full GUI interface, but the plotting could certainly be done using recipes.

The recipe framework for interactive visualizations with Interact.jl is more or less ready.

When you have the Plots recipe ready and know which variables should be included in the GUI, this could be a good interactive recipe example.

1 Like

That would be very cool. Should I visit Interact.jl to learn more? Or is discussed elsewhere?

One important thing to note is that this goes beyond dose-response and the analysis of sigmoidal curves is used in a lot of different processes. I know, from my biological background, at least two that I did for my MSc and PhD, one is cline fitting in hybrid zones, where alelles in one gene can go from 0 (absence) to 1 (fixation) in a transect. And fitting those clines can give you information about evolutionary processes in those genes. And second obviously is the whole pharmacological aspect of dose-response, that has a lot of applications in ecology, medicine, etc. That’s why I think is important to have a dedicated package, the key point is to do it with enough abstraction that it can be used with different models in different fields. I’m not capable of leading the development of something like that, but I’m sure some people reading this are. And hopefully this thread can pique their curiosity.

There are some docs here and if you head over to StatPlots.jl there is the dataviewer recipe you can look at. Otherwise this blog post may be helpful. If you’re at JuliaCon, interactive recipes could be an interesting topic to discuss during the Hackathon.

I tried it again. Now it works. Thanks. I am looking forward to seeing that merged into the current LsqFit or another official package.

@piever How should one try to define recipes? With RecipesBase.jl?

Yes, here there are some docs on how to create Plots recipes, again StatPlots has a few examples you can look at.