While reordering some old papers I rediscovered a paper by Dawn Iacobucci introducing structural equation modeling: Everything You Always Wanted to Know About SEM (Structural Equations Modeling) But Were Afraid to Ask. I liked Iacobucci’s introduction to SEM because it was eloquently written, clear and accessible. Moreover, Iacobucci accompanied the paper with a data-set and step-by-step explanation of the syntax to analyze it. This allowed the reproduction of her analysis to all the adventurous readers willing to start with structural equation modeling. Iacobucci used LISREL for the data-analysis and, at the time, I had no access to LISREL. Now, however, with lavaan available, when I encountered the paper again I saw an opportunity to make her approach reproducible by a wider audience since lavaan is available to anyone and its syntax is very intuitive. In this post I translate Iacobucci’s LISREL syntax to lavaan.
Continue reading “Beginning with SEM in lavaan”
Every spring I struggle with my superpower: killing perfectly healthy plants by watering them too much. Every year, around July or August, I accept the same conclusion: I should give up trying to cultivate plants and, next year, I should spare plants the misery of being nurtured by me. But then spring comes again and brings with it the scent of flowers, the sight, and odor of cooking herbs and therefore the temptation to try again. This year instead of suppressing my craving I will adopt a smarter approach. I bought a sensor to monitor the plants’ moisture which I will use to prevent me from drowning the plants. With the moisture values as a starting base, I will apply the scientific method to the subtle art of watering plants.
Continue reading “Objectifying plant watering”
This follows up on the four dimensions in two dimensions post. I updated the graph adding some functionality, increasing the readability and improving the aesthetics. Moreover, the plot can now transition from a visualization with two categorical variables to one with four. The principle guiding the creation of the graph remains the same: to display as much information as possible into a two-dimensional graph without sacrificing interpretability and maintaining (hopefully) pleasing aesthetics. Because of the addition of the transition effect, I thought it was like adding a new dimension to the four which already existed. Below I describe the implementation of these additions. The graph is made in d3.js and the final plot can be admired here.
Continue reading “Can we make it 5?”
This post is the third in the series describing the web-interface I created to administer a questionnaire with the Delphi method. In this post I describe the code used to give feedback to the participants in round 2 of the Delphi study on functional magnetic resonance imaging on tinnitus. If you are interested in the previous posts, this post describes the interface for round 1 whereas this post describes (the first part of) the interface for round 2.
Continue reading “Web-interface for Delphi Method III”
This post describes the web-interface I built for the second round of the Delphi method study on functional magnetic resonance imaging and tinnitus. In the second round, the experts who participated in the first round saw the responses that they gave to the first round side-by-side with the responses of all the other experts. As represented in the figure above, in round 2 the Delphi interface displayed one question and two bar plots showing the distribution of experts’ responses for the given question in round 1. To keep the post short and to the point, I divided the description of the interface for round 2 into two parts.
Continue reading “Web-interface for Delphi Method II”
I recently worked on a fun project at work. I developed a web-interface for administering a questionnaire using the Delphi method. The Delphi method aims to bring consensus on a given topic using a concept similar to ‘the wisdom of crowds‘.
Continue reading “Web-interface for Delphi method”
This post is an update on the previous post translating Byron and Wattenberg’s streamgraphs algorithm into R. Byron and Wattenberg’s algorithm produces beautiful streamgraphs with the synthetic data produced by their streams generator. However, the implementation yields an ugly streamgraph when applied to data which might not be as wiggly as the synthetic ones. In the attempts I made I got very peaky wiggles, not smoothed and irregular. In short the graphs did not transmit the idea of a stream, but of a blurry blob or a peaky primitive bat (the wooden club, not the animal, that would be cool!). In this post I bring-up some points to bear in mind when producing a streamgraph. Continue reading “Streamgraph in R [final]”