Find file
Fetching contributors…
Cannot retrieve contributors at this time
1185 lines (877 sloc) 77.2 KB
---
title: Zeo sleep experiments
description: EEG recordings of sleep and my experiments with things affecting sleep quality or durations
tags: sleep, experiments, psychology, DNB, nootropics
...
So on Christmas I finally got a [Zeo](!Wikipedia "Zeo, Inc."). A Zeo is basically an alarm clock with a wireless scaled-down [EEG](!Wikipedia) sensor-headband. The EEG data is processed to estimate whether one is asleep and what [stage](!Wikipedia "Sleep#Sleep stages") of sleep one is in. Zeo breaks sleep down into waking, [REM](!Wikipedia "Rapid eye movement sleep"), [light](!Wikipedia "Non-rapid eye movement sleep"), and [deep](!Wikipedia "Slow-wave sleep"). (The phases aren't necessarily that physiologically distinct.)
The data is much better than what you would get from more popular methods like cellphones with accelerometers, since an accelerometer only knows if you are moving or not, which isn't a very reliable indicator of sleep[^fitbit]. (You could just be lying there staring at the ceiling, wide awake. Or perhaps the cat is kneading you while you are in light sleep.) As well, half the interest is how exactly sleep phases are arranged and how long the cycles are; you could use that information to devise [a custom polyphasic schedule](http://blog.myzeo.com/sleeping-round-the-clock-a-polyphasic-experiment/) or just figure out a better nap length than the rule-of-thumb of 20 minutes. And the price isn't too bad - $150 for the normal Zeo as of February 2012.
[^fitbit]: The obvious and cheaper alternative to the Zeo would be the [Fitbit](!Wikipedia), one of the accelerometers. There aren't many comparisons; [Diana Sherman](http://www.healthyobsessions.net/2010/11/fitbit-zeo-sleep-cycle-1/) compared one night, and [Joe Betts-LaCroix](http://vimeo.com/28735982) compared ~38 nights of data. In both cases, the Fitbit seemed to be pretty similar to the Zeo at estimating total sleep time (the only thing it can measure). Betts-LaCroix explicitly recommends the Zeo, but I'm not clear on whether that is due to the better data quality or because Fitbit made it hard to impossible for him to extract the detailed Fitbit data while Zeo offers easy exporting. In any case, I already have the Zeo and I've come to like the detailed information.
# Tests
I personally want the data for a few distinct purposes, but in the best Quantified Self vein[^QS], mostly experimenting:
1. quantifying the benefits of [melatonin](Melatonin)
2. quantifying the costs of [modafinil](Modafinil)
3. testing benefits of [huperzine-A](!Wikipedia)[^ferriss]
4. designing & starting [polyphasic sleep](!Wikipedia)
5. assisting [lucid dreaming](!Wikipedia)
6. reducing sleep time in general (better & less sleep)
7. investigating effects of [n-backing](DNB FAQ):
- do n-backing just before sleep, and see whether percentages shift (more deep sleep as the brain grows/changes?) or whether one sleeps better (fewer awakenings, less light sleep).
- do n-backing after waking up, to look for correlation between good/bad sleeps and performance (one would expect good sleep ~> good scores).
- test the costs of polyphasic sleep on memory^[My own suspicion is that given the existence of [neuron-level sleep in mice](http://www.cosmosmagazine.com/news/4264/can-we-be-awake-and-asleep-same-time), [poor self-monitoring in humans](http://www.nytimes.com/2011/04/17/magazine/mag-17Sleep-t.html), and [anecdotal reports](http://lesswrong.com/lw/5n0/optimizing_sleep/44zu) about polyphasic sleep, is that polyphasic sleep is a real & workable phenomenon but that it comes at the price of a significant chunk of mental performance.]
8. (positive) effect of [Seth Roberts](!Wikipedia)'s [one-legged standing](http://www.blog.sethroberts.net/2011/03/22/effect-of-one-legged-standing-on-sleep/) on sleep depth/efficiency
9. (negative) effect of [vitamin D on sleep](#vitamin-d)
10. possible sleep reductions due to [meditation](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2919439/)
11. serial cable uses:
- quantifying meditation (eg. length of gamma frequencies)
- rank music by distractibility?
- measure focus over the day and during specific activities (eg. correlate frequencies against n-backing performance)
[^QS]: Note that one can use a Zeo and not be doing anything really recognizable as 'Quantified self'. For example, one could just collect data. An example here would be Stephen Wolfram's post ["The Personal Analytics of My Life"](http://blog.stephenwolfram.com/2012/03/the-personal-analytics-of-my-life/); Wolfram has collected an astonishing amount of information on his typing, emails, phone calls, calendars and walking over <20 years. Only in 2012 has he actually graphed any of it or attempted to analyze it.
In particular, he has never once changed his behavior in response to his gathered data nor has he ever experimented with different tools or strategies for, say, more efficient typing. (He mentions that 7% of his keystrokes are the Backspace key, which is remarkably high and probably indicates he could either benefit from learning better his favorite text editor or just basic typing training: at 7% backspacing, he is almost surely nowhere near a reasonable 80-100 WPM, which is costing him a great deal of time & effort given that he sends or receives hundreds of emails a day!)
[^ferriss]: I had previously [tried](Nootropics#huperzine-a) huperzine-A and found no effect from it, but I had no way of really noticing any effect on sleep, and [Timothy Ferriss](!Wikipedia) in his _The Four-hour Body_ claims:
> "Taking 200 milligrams of huperzine-A 30 minutes before bed can increase total REM by 20 –30%. Huperzine-A, an extract of _Huperzia serrata_, slows the breakdown of the neurotransmitter acetylcholine. It is a popular nootropic (smart drug), and I have used it in the past to accelerate learning and increase the incidence of lucid dreaming. I now only use huperzine-A for the first few weeks of language acquisition, and no more than three days per week to avoid side effects. Ironically, one documented side effect of overuse is insomnia. The brain is a sensitive instrument, and while generally well tolerated, this drug is contraindicated with some classes of medications. Speak with your doctor before using."
# First impressions
## First night
Christmas morning, I unpacked it and admired the packaging, and then looked through the manual. The base-station/alarm-clock seems pretty sturdy and has a large clear screen. The headband seemed comfortable enough that it wouldn't bother me. The various writings with it seemed rather fluffy and preppy, but I did my technical homework before hand, so could ignore their crap.
Late that night (quite late, since the girls stayed up playing _[Fable 3](!Wikipedia)_ and Xbox [Kinect](!Wikipedia) dancing games and what not), I turn in wearily. I had noticed that the alarm seemed to be set for ~3:30 AM, but I was very tired from the long day and taking my melatonin, and didn't investigate further - I mean, what electronic would ship with the alarm both enabled and enabled for a bizarre time? It wasn't worth bothering the other sleeper by turning on the light and messing with it. I put on the headband, verified that the Zeo seemed to be doing stuff, and turned in.
Come 3 AM, and the damn music goes off! I hit snooze, too discombobulated to figure out how to turn off the alarm.
So that explains the strange Zeo data for the first day:
![First night](/images/zeo/2010-12-25.png)
The major surprise in this data was how quickly I fell asleep: 18 minutes. I had always thought that I took much longer to fall asleep, more like 45 minutes, and had budgeted accordingly; but apparently [being deluded](http://blog.myzeo.com/sleep-forgetting-to-remember-to-forget/) about when you are awake and asleep is common. The rest of the data seemed too messed up by the alarm to learn anything from.
# Uses
## Meditation
One possible application for Zeo was meditation. If it's measuring via EEG, then presumably it's learning something about how relaxed and activity-less one's mind is. I'm not seeking enlightenment, just calmness, which would seem to be in the purview of an EEG signal. (As Charles Babbage said. errors made using insufficient data are still less than errors made using no data at all.) But alas, I meditated for a solid 25 minutes and the Zeo stubbornly read at the same wake level the entire time; I then read my [Donald Keene](!Wikipedia) book, _Modern Japanese diaries_, for a similar period with no change at all. It is possible that the 5-minute averaging (Zeo measures every 2 seconds) is hiding useful changes, but probably it's simply not picking up any real differences. Oh well!
## Smart alarm
The second night I had set the alarm to a more reasonable time, and also enabled its smart alarm mode (["SmartWake"](http://blog.myzeo.com/smartwake-a-different-way-to-wake-up/)), where the alarm will go off up to 30 minutes early if you are ever detected to be awake or in light sleep (as opposed to REM or deep sleep). One thing I forgot to do was take my melatonin; I keep my supplements in the car and there was a howling blizzard outside. It didn't bother me since I am not addicted to melatonin.
In the morning, the smart alarm mode seemed to work pretty well. I woke up early in a good mode, thought clearly and calmly about the situation - and went back to sleep. (It's a holiday, after all.)
## Replacing headband
Around 15 May 2011, I gave up on the original headband - it was getting too dirty to get good readings - and decided to rip it apart to see what it was made of, and to order a new set of three for \$35 (which seems reasonable given the expensive material that the contacts are made of - silver fabric); apparently they now [cost $50](http://www.myzeo.com/sleep/shop/zeo-accessories/zeo-bedside-headband-sensor-replacement-kit-x-3.html). A little googling found me a coupon, `FREESHIP`, but apparently it only applied to the Zeo itself and so the pads were actually \$40, or ~\$13 a piece. I won't say that buying replacement headbands every 4 or 5 months is something that *thrills* me, but \$20 a year for sleep data is a pretty small sum. Certainly it's more cost-effective than most of the [nootropics](Nootropics) I have used. (Full disclosure: 9 months after starting this page, Zeo [offered me](#comment-309924264) a free set of sensors.)
![The old headband, with electrical tape residue](/images/zeo/zeo-headband-original.jpg) ![The disposable headband with the cloth covering removed](/images/zeo/zeo-headband-deconstructed.jpg)/
![Said headband with plastic removed; notice discoloration of metal despite cleaning](/images/zeo/zeo-headband-fabric1.jpg) ![The reverse side](/images/zeo/zeo-headband-fabric2.jpg)/
![The new headband's wrapper](/images/zeo/zeo-wrapper.jpg) ![The new headband](/images/zeo/zeo-new-headband.jpg)/
In the future, I might try to make my own; buying the fabric is apparently cheaper than ordering from Zeo, see <http://www.flickr.com/photos/eokgnah/5489407407/>. An alternative suggestion is, since the Zeo headband is a one-electrode EEG headset, to take an approach similar to the EEG people and occasionally add small dabs of conductive paste, since even fairly large quantities are cheap (eg. [12oz for $30](http://www.amazon.com/Ten20-EEG-Conductive-Paste-Tube/dp/B002R16OUK)).
# Melatonin
Before writing my [melatonin advocacy](Melatonin) article, I had used melatonin regularly for 6+ years, ever since I discovered (somewhen in high school or college) that it was useful for enforcing bedtimes and seemed to improve sleep quality; when I [posted my writeup to LessWrong](http://lesswrong.com/lw/1lt/case_study_melatonin/#comments) people were naturally a little skeptical of my specific claim that it improved the quality of my sleep such that I could reduce scheduled time by an hour or so. Now that I had a Zeo, wouldn't it be a good idea to see whether it did anything, lo these many years later?
## Melatonin analysis
The [following section](#melatonin-data) represents 5 or 6 months of data ([raw CSV data](/docs/2011-zeo-melatonin.csv); [guide to Zeo CSV](http://mysleep.myzeo.com/export/Export%20Data%20Help%20Sheet.pdf)); the data is very noisy (especially towards the end as the headband got dirty), but hopefully the overall conclusions are not entirely untrustworthy. Let's look at some average. Zeo's website lets you enter in a 3-valued variable and then graph the average day for each variable against a particular recorded property like ZQ or total length of REM sleep. I defined one dummy variable, and decided that a '0' would correspond to not using melatonin, '1' would correspond to using it, and '2' would correspond to using a double-dose or more (on the rare occasions I felt I needed sleep insurance). The following additional analyses of _p_-values[^R-melatonin-analysis-p][^R-melatonin-analysis-o] is done by importing the CSV into [R](!Wikipedia "R (programming language)"); given all the issues with self-experimentation (these melatonin days weren't even blinded), the _p_-values should be treated as gross guesses, where <0.01 indicates I should take it seriously, <0.05 is pretty good, <0.10 means I shouldn't sweat it, and anything bigger than 0.20 is, at most, interesting while >0.5 means ignore it; we'll also look at correcting for multiple comparisons[^Bonferroni], for the heck of it.
[^R-melatonin-analysis-p]: The analysis session in the `R` interpreter:
~~~{.r}
> # Read in data w/ variable names in header; uninteresting columns deleted in OpenOffice.org
> mydata <- read.table("2011-zeo-melatonin.csv", header=TRUE, sep=",")
>
> # "SSCF 10" is the variable ('sleep stealer custom factor'); I hand-edited the CSV to convert all '3' to '1' to make it a binary variable
> t.test(ZQ~SSCF.10, data=mydata)
Welch Two Sample t-test
data: ZQ by SSCF.10
t = 1.7467, df = 53.249, p-value = 0.08645
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-1.282982 18.602275
sample estimates:
mean in group 0 mean in group 1
84.95652 76.29688
> t.test(Total.Z~SSCF.10, data=mydata)
Welch Two Sample t-test
data: Total.Z by SSCF.10
t = 1.7696, df = 53.227, p-value = 0.08252
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-6.526613 104.420635
sample estimates:
mean in group 0 mean in group 1
456.4783 407.5312
> t.test(Time.to.Z~SSCF.10, data=mydata)
Welch Two Sample t-test
data: Time.to.Z by SSCF.10
t = 1.1337, df = 27.207, p-value = 0.2668
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-3.337966 11.587966
sample estimates:
mean in group 0 mean in group 1
19.000 14.875
> t.test(Time.in.Wake~SSCF.10, data=mydata)
Welch Two Sample t-test
data: Time.in.Wake by SSCF.10
t = 0.6333, df = 46.823, p-value = 0.5296
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-2.012675 3.861860
sample estimates:
mean in group 0 mean in group 1
6.565217 5.640625
> t.test(Time.in.REM~SSCF.10, data=mydata)
Welch Two Sample t-test
data: Time.in.REM by SSCF.10
t = 2.6237, df = 62.064, p-value = 0.01093
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
6.509461 48.165811
sample estimates:
mean in group 0 mean in group 1
145.4783 118.1406
> t.test(Time.in.Deep~SSCF.10, data=mydata)
Welch Two Sample t-test
data: Time.in.Deep by SSCF.10
t = 0.1547, df = 35.496, p-value = 0.8779
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-7.743305 9.021837
sample estimates:
mean in group 0 mean in group 1
57.21739 56.57812
> t.test(Awakenings~SSCF.10, data=mydata)
Welch Two Sample t-test
data: Awakenings by SSCF.10
t = 0.7956, df = 40.835, p-value = 0.4309
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.6648722 1.5290027
sample estimates:
mean in group 0 mean in group 1
2.869565 2.437500
> t.test(Morning.Feel~SSCF.10, data=mydata)
Welch Two Sample t-test
data: Morning.Feel by SSCF.10
t = -1.3606, df = 44.188, p-value = 0.1805
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.5496275 0.1065633
sample estimates:
mean in group 0 mean in group 1
2.952381 3.173913
> t.test(Time.in.Light~SSCF.10, data=mydata)
Welch Two Sample t-test
data: Time.in.Light by SSCF.10
t = 1.2354, df = 46.426, p-value = 0.2229
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-13.15648 54.99751
sample estimates:
mean in group 0 mean in group 1
254.2174 233.2969
~~~
If we correct for multiple comparisons (see [next footnote](#fn5)) at _q_-value=0.05, of our 10 _p_-values (0.01093, 0.08252, 0.08645, 0.1805, 0.2229, 0.2668, 0.4309, 0.5296, 0.8779), none of them survive:
~~~{.haskell}
let bh (i,p) = p < ((i * 0.05) / 10) in map bh
(zip [1..] [0.01093, 0.08252, 0.08645, 0.1805, 0.2229, 0.2668, 0.4309, 0.5296, 0.8779])
~>
[False,False,False,False,False,False,False,False,False,False]
~~~
Oh well.
[^R-melatonin-analysis-p]: The following `R` re-runs the above analysis but with options that increase the power of the results - but only if some assumptions about melatonin's effects are correct; see later Vitamin D discussion of 'optimistic' and 'pessimistic' assumptions.
~~~{.R}
> t.test(ZQ~SSCF.10, data=mydata, var.equal=TRUE); t.test(Total.Z~SSCF.10, data=mydata, var.equal=TRUE)
Two Sample t-test
data: ZQ by SSCF.10
t = 1.5091, df = 85, p-value = 0.135
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-2.749923 20.069217
sample estimates:
mean in group 0 mean in group 1
84.95652 76.29688
Two Sample t-test
data: Total.Z by SSCF.10
t = 1.5291, df = 85, p-value = 0.13
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-14.69983 112.59385
sample estimates:
mean in group 0 mean in group 1
456.4783 407.5312
> t.test(Time.to.Z~SSCF.10, data=mydata, alternative="less", var.equal=TRUE); t.test(Time.in.Wake~SSCF.10, data=mydata, alternative="less", var.equal=TRUE)
Two Sample t-test
data: Time.to.Z by SSCF.10
t = 1.4588, df = 85, p-value = 0.9258
alternative hypothesis: true difference in means is less than 0
95 percent confidence interval:
-Inf 8.827328
sample estimates:
mean in group 0 mean in group 1
19.000 14.875
Two Sample t-test
data: Time.in.Wake by SSCF.10
t = 0.5783, df = 85, p-value = 0.7177
alternative hypothesis: true difference in means is less than 0
95 percent confidence interval:
-Inf 3.58344
sample estimates:
mean in group 0 mean in group 1
6.565217 5.640625
> t.test(Time.in.REM~SSCF.10, data=mydata, var.equal=TRUE); t.test(Time.in.Deep~SSCF.10, data=mydata, var.equal=TRUE)
Two Sample t-test
data: Time.in.REM by SSCF.10
t = 2.1307, df = 85, p-value = 0.036
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
1.827653 52.847619
sample estimates:
mean in group 0 mean in group 1
145.4783 118.1406
Two Sample t-test
data: Time.in.Deep by SSCF.10
t = 0.163, df = 85, p-value = 0.8709
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-7.156889 8.435422
sample estimates:
mean in group 0 mean in group 1
57.21739 56.57812
> t.test(Awakenings~SSCF.10, data=mydata, alternative="less", var.equal=TRUE); t.test(Morning.Feel~SSCF.10, data=mydata, alternative="great", var.equal=TRUE)
Two Sample t-test
data: Awakenings by SSCF.10
t = 0.7756, df = 85, p-value = 0.7799
alternative hypothesis: true difference in means is less than 0
95 percent confidence interval:
-Inf 1.358521
sample estimates:
mean in group 0 mean in group 1
2.869565 2.437500
Two Sample t-test
data: Morning.Feel by SSCF.10
t = -1.2918, df = 65, p-value = 0.8995
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
-0.5076874 Inf
sample estimates:
mean in group 0 mean in group 1
2.952381 3.173913
> t.test(Time.in.Light~SSCF.10, data=mydata, alternative="less", var.equal=TRUE)
Two Sample t-test
data: Time.in.Light by SSCF.10
t = 1.1324, df = 85, p-value = 0.8697
alternative hypothesis: true difference in means is less than 0
95 percent confidence interval:
-Inf 51.64192
sample estimates:
mean in group 0 mean in group 1
254.2174 233.2969
~~~
[^Bonferroni]: The usual way to correct for the issue of multiple comparisons inflating results (a big problem in epidemiology and why their results are so often false) is to use a [Bonferroni correction](!Wikipedia) - if I look at the _p_-values for 7 Zeo metrics, I wouldn't consider any to be significant at '_p_=0.05' unless they were actually significant at $\frac{0.05}{7} = 0.00714 = 0.007$, which is even more stringent than the rarer '_p_=0.01' criterion. With the even stronger criterion '_p_=0.007', it's a safe bet than *none* of my tests give significant results. Which may be the right thing to conclude, since all my data is just _n_=1 and unreliable in many ways, but still, the Bonferroni correction is not being very helpful here.
The caveat is that the Bonferroni correction is intended for use on 'independent' data, while the Zeo metrics are all very dependent, some by *definition* (eg. ZQ is defined partly as what the REM sleep length was, AFAIK). So while the Bonferroni correction will still do the job of only letting through *really* significant data, it'll do so by throwing out way more potentially good results than one has to. (It'll avoid some false positives by making many false negatives.) So what should we do?
[Andy McKenzie](http://lesswrong.com/lw/9ui/ask_for_help_on_your_project_open_thread/5ump#thingrow_t1_5ump) suggested limiting our [false discovery rate](!Wikipedia) by using the method of [Benjamin & Hochberg 1995](http://www.math.tau.ac.il/~ybenja/MyPapers/benjamini_hochberg1995.pdf "Controlling the False Discovery Rate: a Practical and Powerful Approach to Multiple Testing"):
> "...let's say that you test 6 hypotheses, corresponding to different features of your Zeo data. You could use a t-test for each, as above. Then aggregate and sort all the _p_-values in ascending order. Let's say that they are 0.001, 0.013, 0.021, 0.030, 0.067, and 0.134.
>
> Assume, arbitrarily, that you want the overall false discovery rate to be 0.05, which is in this context called the _q_-value. You would then sequentially test, from the last value to the first, whether the current _p_-value is less than $\frac{\text{the current index} \times \text{the false discovery rate}}{\text{the overall number of hypotheses}}$. You stop when you get to the first true inequality and call the _p_-values of the rest of the hypotheses significant.
>
> So in this example, you would stop when you correctly call $0.030 \lt \frac{4 \times 0.05}{6}$, and only the hypotheses corresponding to the first four [smallest] _p_-values would be called significant."
As expected, when using melatonin, total sleep and 'times awoken' were both reduced (_p_=0.083 & _p_=0.431); the total sleep fell by 12% (456 minutes to 402 minutes):
![](/images/zeo/melatonin-totalz.png)
![](/images/zeo/melatonin-timeswoken.png)
Deep sleep and 'time in wake' were both apparently unaffected (_p_=0.88 & _p_=0.53); 'time in wake' apparently had too small a sample to draw much conclusion:
![](/images/zeo/melatonin-timedeep.png)
Surprisingly, total REM sleep fell 20% (145 to 116 minutes), for a significant reduction (_p_=0.011):
![](/images/zeo/melatonin-timerem.png)
Given that the ZQ metric seems to be primarily determined by total sleep and REM sleep, it's not surprising - given the REM graph - that ZQ also fell (_p_=0.087):
![](/images/zeo/melatonin-zq.png)
REM's average fell by 29 minutes, deep sleep fell by 1 minute, but total sleep fell by 54 minutes; this implies that light sleep fell by 24 minutes. (The averages were 254.2 & 233.3; _p_=0.2229.) I am not sure what to make of this. While my original heuristic of a one hour reduction turns out to be surprisingly accurate, I had expected light and deep sleep to take most of the time hit. Do I get enough REM sleep? I don't know how I would answer that.
I did feel fine on the days after melatonin use, but I didn't track it very systematically. The best I have is the 'morning feel' parameter, which the Zeo asks you on waking up; in practice I entered the values as: a '2' means I woke feeling poor or unrested, '3' was fine or mediocre, and '4' was feeling good. When we graph the average of morning feel against melatonin use or non-use, we find that melatonin was noticeably better (2.95 vs 3.17, _p_=0.18):
![](/images/zeo/melatonin-morningfeel.png)
Unfortunately, this dataseries doesn't distinguish between addition to melatonin or benefits from melatonin - perhaps the 3.2 is my 'normal' sleep quality and the 2.9 comes from a 'withdrawal' of sorts. So, onwards to other measures of mental performance. Also unfortunately, during this period, I didn't regularly do my [n-backing](DNB FAQ) either, so there'd be little point trying to graph that. What I spent a lot of my free time doing was editing `gwern.net`, so it might be worth looking at whether nights on melatonin correspond to increased edits the next day. In this graph of edits, the red dots are days without melatonin and the green are days with melatonin; I don't see any clear trend, although it's worth noting almost all of the very busy days were melatonin days:
![Days versus # of edits versus melatonin on/off](/images/zeo/melatonin-usage-versus-darcs.png)
## Melatonin data
The data looked much better than the first night, except for a big 2-hour gap where I vaguely recall the sensor headband having slipped off. (I don't think it was because it was uncomfortable but due to shifting positions or something.) Judging from the cycle of sleep phases, I think I lost data on a REM peak. The REM peaks interest me because it's a standard theory of polyphasic sleeping that thriving on 2 or 3 hours of sleep a day is possible because REM (and deep sleep) is the only phase that truly matters, and REM can dominate sleep time through [REM rebound](!Wikipedia) and training.
![Second night](/images/zeo/2010-12-26.png)
Besides that, I noticed that time to sleep was 19 minutes that night. I also had forgotten to take my melatonin. Hmm...
Since I've begun this inadvertent experiment, I'll try continuing it, alternating days of melatonin usage. I claim in my melatonin article that usage seems to save about 1 hour of sleep/time, but there's several possible avenues. One could be quicker to fall asleep; one could awake fewer times; and one could have greater percentage of REM or deep sleep, reducing light sleep. (Light sleep doesn't seem very useful; I sometimes feel worse after light sleep.)
During the afternoon, I took a quick nap. I'm not a very good napper, it seems - only the first 5 minutes registered as even light sleep.
A dose of melatonin (1.5mg) and off to bed a bit early. I'm a little more impressed with the smart alarm; since I'm hard-of-hearing and audio alarms rarely if ever work, I usually use a [Sonic Alert](http://www.amazon.com/Sonic-Alert-SBP100-Portable-Vibrating/dp/B000EX3DQQ) vibrating alarm clock. But in the morning I woke up within a minute of the alarm, despite the lack of vibration or flashing lights. (The chart doesn't reflect this, but as a previous link says, distinguishing waking from sleeping can be difficult and the transitions are the least trustworthy parts of the data.)
The data was especially good today, with no big gaps:
![](/images/zeo/2010-12-27.png)
You can see an impressively regular sleep cycle, cycling between REM and light sleep. What's disturbing is the relative lack of deep sleep - down 4-5% (and there wasn't a lot to begin with). I suspect that the lack of deep sleep indicates I wasn't sleeping very well, but not badly enough to wake up, and this is probably due either to light from the Zeo itself - I only figured out how to turn it off a few days later - or my lack of regular blankets and use of a sleeping bag. But the awakenings around 4-6 AM and on other days has made me suspicious that one of the cats is bothering me around here and I'm just forgetting it as I fall asleep.
The next night is another no-melatonin night. This time it took 79 minutes to fall asleep. Very bad, but far from unprecedented; this sort of thing is why I was interested in melatonin in the first place. Deep sleep is again limited in dispersion, with a block at the beginning and end, but mostly a regular cycle between light and REM:
![](/images/zeo/2010-12-28.png)
Melatonin night, and 32 minutes to sleep. (I'm starting to notice a trend here.) Another fairly regular cycle of phases, with some deep sleep at the beginning and end; 32 minutes to fall asleep isn't great but much better than 79 minutes.
![](/images/zeo/2010-12-29.png)
Perhaps I should try a biphasic schedule where I sleep for an hour at the beginning and end? That'd seem to pick up most of my deep sleep, and REM would hopefully take care of itself with REM rebound. Need to sum my average REM & deep sleep times (that sum seems to differ quite a bit, eg one fellow needs [4+ hours](http://www.myzeo.com/sleep/comment/1131#comment-1131). My own need seems to be similar) so I don't try to pick a schedule doomed to fail.
Another night, no melatonin. Time to sleep, just 18 minutes and the ZQ sets a new record even though my cat Stormy woke me up in the morning^[_Technology Review_ editor Emily Singer [noticed the same problem](http://www.technologyreview.com/blog/themeasuredlife/26894/) when using her Zeo.]:
![](/images/zeo/2010-12-30.png)
I personally blame this on being exhausted from 10 hours working on my transcription of [_The Notenki Memoirs_](docs/2002-notenki-memoirs). But a data point is a data point.
I spend New Year's Eve pretty much finishing _The Notenki Memoirs_ (transcribing the last of the biographies, the round-table discussion, and editing the images for inclusion), which exhausts me a fair bit as well; the champagne doesn't help, but between that and the melatonin, I fall asleep in a record-setting 7 minutes. Unfortunately, the headband came off somewhere around 5 AM:
![](/images/zeo/2010-12-31.png)
A cat? Waking up? Dunno.
Another relatively quick falling asleep night at 20 minutes. Which then gets screwed up as I simply can't stay asleep and then the cat begins bothering the heck out of me in the early morning:
![](/images/zeo/2011-01-01.png)
Melatonin night, which subjectively didn't go too badly; 20 minutes to sleep. But lots of wake time (long enough wakes that I remembered them) and 2 or 3 hours not recorded (probably from adjusting my scarf and the headband):
![](/images/zeo/2011-01-03.png)
Accidentally did another melatonin night (thought Monday was a no-melatonin night). Very good sleep - set records for REM especially towards the late morning which is curious. (The dreams were also very curious. I was an Evangelion character (Kaworu) tasked with riding that kind of carnival-like ride that goes up and drops straight down.) Also another quick falling asleep:
![](/images/zeo/2011-01-04.png)
Rather than 3 melatonin nights in a row, I skipped melatonin this night (and thus will have it the next one). Perhaps because I went to sleep so very late, and despite some awakenings, this was a record-setting night for ZQ and TODO deep sleep or REM sleep? :
![](/images/zeo/2011-01-05.png)
I also switched the alarm sounds 2 or 3 days ago to 'forest' sounds; they seem somewhat more pleasant than the beeping musical tones. The next night, data is all screwed up. What happened there? It didn't even record the start of the night, though it seemed to be active and working when I checked right before going to sleep. Odd.
Next 2 days aren't very interesting; first is no-melatonin, second is melatonin:
![](/images/zeo/2011-01-07.png)
![](/images/zeo/2011-01-08.png)
![Off](/images/zeo/2011-01-09.png)
![On](/images/zeo/2011-01-10.png)
![Off](/images/zeo/2011-01-11.png)
One of my chief Zeo complaints was the bright blue-white LCD screen. I had resorted to turning the base station over and surrounding it with socks to block the light. Then I looked closer at the labels for the buttons and learned that the up-down buttons changed the brightness and the LCD screen could be turned off. And I had read the part of the manual that explained that. D'oh!
![On](/images/zeo/2011-01-12.png)
![?](/images/zeo/2011-01-13.png)
![Off](/images/zeo/2011-01-14.png)
![Off (forgot)](/images/zeo/2011-01-15.png)
![On](/images/zeo/2011-01-16.png)
![Off](/images/zeo/2011-01-17.png)
![On](/images/zeo/2011-01-18.png)
![Off](/images/zeo/2011-01-19.png)
![On](/images/zeo/2011-01-20.png)
![Off](/images/zeo/2011-01-21.png)
Off, but no data on the 22nd. No idea what the problem is - the headset seems to have been on all night.
On with a double-dose of melatonin because I was going to bed early; as you can see, didn't work:
![](/images/zeo/2011-01-23.png)
Off, no data on the 24th. On, no data on the 25th. I don't know what went wrong on these two nights.
![Off](/images/zeo/2011-01-26.png)
The 27th (on for melatonin) yielded no data because, frustratingly, the Zeo was printing a 'write-protected' error on its screen; I assumed it had something to do with uploading earlier that day - perhaps I had yanked it out too quickly - and put it back in the computer, unmounted and went to eject it. But the memory card splintered on me! It was stuck and the end was splintering and little needles of plastic breaking off. I couldn't get it out and gave up. The next day (I slept reasonably well) I went back with a pair of needle-nose pliers. I had a backup memory card. After much trial and error, I figured out the card had to be FAT-formatted and have a directory structure that looked like `ZEO/ZEOSLEEP.DAT`. So that's that.
- ![Off](/images/zeo/2011-01-28.png)
- ![On](/images/zeo/2011-01-29.png)
- 30: on
- 31: off
- 1: on
- 2: off
- 3: on
Unfortunately, this night continues a long run of no data. Looking back, it doesn't *seem* to have been the fault of the new memory card, since some nights did have enough data for the Zeo website to generate graphs. I suspect that the issue is the pad getting dirty after more than a month of use. I hope so, anyway. I'll look around for rubbing alcohol to clean it. That night initially starts badly - the rubbing alcohol seemed to do nothing. After some messing around, I figure out that the headband seems to have loosened over the weeks and so while the sensor felt reasonably snug and tight and was transmitting, it wasn't snug enough. I tighten it considerably and actually get some decent data:
- ![Off](/images/zeo/2011-02-04.png)
- 5: on
- ![Off](/images/zeo/2011-02-06.png)
- 7: on
- 8: off
- 9: on
- ![Off](/images/zeo/2011-02-10.png)
- 11: on?
The previous night, I began paying closer attention to when it was and was not reading me (usually the latter). Pushing hard on it made it eventually read me, but tightening the headband hadn't helped the previous several nights. Pushing and not pushing, I noticed a subtle click. Apparently the band part with the metal sensor pad connects to the wireless unit by 3 little black metal nubs; 2 were solidly in place, but the third was completely loose. Suspicious, I try pulling on the band *without* pushing on the wireless unit - leaving the loose connection loose. Sure enough, no connection was registered. I push on the unit while loosing the headband - and the connection worked. I felt I finally had solved it. It wasn't a loose headband or me pulling it off at night or oils on the metal sensors or a problem with the SD card. I was too tired to fix it when I had the realization, but resolved the next morning to fix it by wrapping a rubber band around the wireless unit and band. This turned out to not interfere with recharging, and when I took a short nap, the data looked fine and gapless. So! The long data drought is hopefully over.
![](/images/zeo/2011-02-11.png)
![Off](/images/zeo/2011-02-12.png)
![On](/images/zeo/2011-02-13.png)
![Off](/images/zeo/2011-02-14.png)
On the 15th of February, I had a very early flight to San Francisco. That night and every night from then on, I was using melatonin, so we'll just include all the nights for which any sensible data was gathered. Oddly enough, the data and ZQs seem bad (as one would expect from sleeping on a couch), but I wake up feeling fairly refreshed. By this point we have the idea how the sleep charts work, so I will simply link them rather than display them.
- [02-15](/images/zeo/2011-02-15.png)
- [02-16](/images/zeo/2011-02-16.png)
- [02-17](/images/zeo/2011-02-17.png)
- [02-18](/images/zeo/2011-02-18.png)
- [02-19](/images/zeo/2011-02-19.png)
- [02-20](/images/zeo/2011-02-20.png)
Then I took a long break on updating this page; when I had a month or two of data, I uploaded to Zeo again, and buckled down and figured out how to have [ImageMagick](!Wikipedia) [crop](http://www.imagemagick.org/Usage/crop/#crop) pages. The shell script (for screenshots of my browser, YMMV) is `for file in *.png; do mogrify +repage -crop 700x350+350+285 $file; done;`
General observations: almost all these nights were on melatonin. Not far into this period, I realized that the little rubberband was not working, and I hauled out my red [electrical tape](!Wikipedia) and tightened it but good; and again, you can see the transition from crappy recordings to much cleaner recordings. The rest of February:
- [02-23](/images/zeo/2011-02-23.png)
- [02-24](/images/zeo/2011-02-24.png)
- [02-26](/images/zeo/2011-02-26.png)
- [02-28](/images/zeo/2011-02-28.png)
March:
- [03-01](/images/zeo/2011-03-01.png) / [03-02](/images/zeo/2011-03-02.png)
- [03-05](/images/zeo/2011-03-05.png) / [03-07](/images/zeo/2011-03-07.png)
- [03-08](/images/zeo/2011-03-08.png) / [03-09](/images/zeo/2011-03-09.png)
- [03-10](/images/zeo/2011-03-10.png) / [03-11](/images/zeo/2011-03-11.png)
- [03-15](/images/zeo/2011-03-15.png) / [03-19](/images/zeo/2011-03-19.png)
- [03-22](/images/zeo/2011-03-22.png) / [03-23](/images/zeo/2011-03-23.png)
- [03-24](/images/zeo/2011-03-24.png) / [03-25](/images/zeo/2011-03-25.png)
- [03-26](/images/zeo/2011-03-26.png) / [03-27](/images/zeo/2011-03-27.png)
- [03-28](/images/zeo/2011-03-28.png) / [03-29](/images/zeo/2011-03-29.png)
- [03-30](/images/zeo/2011-03-30.png) / [03-31](/images/zeo/2011-03-31.png)
April:
- [04-01](/images/zeo/2011-04-01.png)
- [04-02](/images/zeo/2011-04-02.png)
- [04-03](/images/zeo/2011-04-03.png)
- [04-04](/images/zeo/2011-04-04.png)
April 4th was one of the few nights that I was not on melatonin during this timespan; I occasionally take a weekend and try to drop all supplements and nootropics besides the multivitamins and fish oil, which includes my melatonin pills. This night (or more precisely, that Sunday evening) I also stayed up late working on my computer, getting in to bed at 12:25 AM. You can see how well that worked out. During the 2 AM wake period, it occurred to me that I didn't especially want to sacrifice a day to show that computer work can make for bad sleep (which I already have plenty of citations for in [the Melatonin essay](Melatonin#health-performance)), and I gave in, taking a pill. That worked out much better, with a relatively normal number of wakings after 2 AM and a reasonable amount of deep & REM sleep.
- [04-05](/images/zeo/2011-04-05.png) / [04-06](/images/zeo/2011-04-06.png)
- [04-07](/images/zeo/2011-04-07.png) / [04-08](/images/zeo/2011-04-08.png)
- [04-09](/images/zeo/2011-04-09.png) / [04-10](/images/zeo/2011-04-10.png) / [2011-04-11](/images/zeo/2011-04-11.png)
- [04-12 off](/images/zeo/2011-04-12.png) / [04-13 on](/images/zeo/2011-04-13.png)
- [04-14 on](/images/zeo/2011-04-14.png) / [04-15 on](/images/zeo/2011-04-15.png)
- [04-16 on](/images/zeo/2011-04-16.png) / [04-18 off](/images/zeo/2011-04-18.png)
- [04-20 off](/images/zeo/2011-04-20.png) / [04-22 on](/images/zeo/2011-04-22.png)
- [04-23 off](/images/zeo/2011-04-23.png) / [04-24 on](/images/zeo/2011-04-24.png)
- [04-26 on](/images/zeo/2011-04-26.png) / [04-27 off](/images/zeo/2011-04-27.png)
- [05-03 off](/images/zeo/2011-05-03.png) / [05-06 on](/images/zeo/2011-05-06.png)
- [05-07 off](/images/zeo/2011-05-07.png) / [05-08 on](/images/zeo/2011-05-08.png)
# Exercise
## One-legged standing
Seth Roberts found that for him, standing a lot [helped him sleep](http://escholarship.org/uc/item/2xc2h866). This seems very plausible to me - more fatigue to repair, closer to ancestral conditions of constant walking - and tallied with my own experience. (One summer I worked at Yawgoog Scout Camp, where I spent the entire day on my feet; I always slept very well though my bunk was uncomfortable.) He also found that stressing his legs by standing on one at a time for a few minutes also [helped him sleep](http://blog.sethroberts.net/2011/03/22/effect-of-one-legged-standing-on-sleep/). That did not seem as plausible to me. But still worth trying: standing is free, and if it does nothing, at least I got a little more exercise.
Roberts tried a fairly complicated randomized routine. I am simply alternating days as with melatonin (note that I have resumed taking melatonin every day). My standing method is also simple; for 5 minutes, I stand on one leg, rise up onto the ball of my foot (because my calves are in good shape), and then sink down a foot or two and hold it until the burning sensation in my thigh forces me to switch to the other leg. (I seem to alternate every minute.) I walk my dog most every day, so the effect is not as simple as 'some moderate exercise that day'; in the next experiment, I might try 5 minutes of dumbbell bicep curves instead.
### One-legged standing analysis
The initial results were promising. Of the first 5 days, 3 are 'on' and 2 are off; all 3 on-days had higher ZQs than the 2 off-days. Unfortunately, the full time series did not seem to bear this out. Looking at the ~70 recorded days between 11 June 2011 and 27 August 2011 ([raw CSV data](/docs/2011-zeo-oneleg.csv)), the averages looked like this (as before, the '3' means the intervention was used, '0' that it was not):
![Standing ZQ vs non-standing](/images/zeo/2011-oneleg-zq.png)
![Morning feel rating](/images/zeo/2011-oneleg-morningfeel.png)
![Total sleep time](/images/zeo/2011-oneleg-totalz.png)
![Total deep sleep time](/images/zeo/2011-oneleg-deep.png)
![Total REM sleep time](/images/zeo/2011-oneleg-rem.png)
![Number of times woken](/images/zeo/2011-oneleg-woken.png)
![Total time awake](/images/zeo/2011-oneleg-wake.png)
With the [melatonin analysis](#melatonin-analysis), I had counted it as a success for melatonin inasmuch as sleep time had substantially fell but sleep quality and mental performance, as far as I could tell, had remained the same. R analysis[^R-oneleg-analysis]:
- total sleep time (deep/REM/total) fell (513.8 vs 502.4, _p_=0.43)
- REM fell (168.8 vs 152.7, _p_=0.018)
- hence ZQ fell, which is ambiguous - good or bad? (96.05 vs 92.5, _p_=0.19)
- but number of awakenings fell, which is good (4.18 vs 4, _p_=0.75)
- as did total time awake which is good (12.8 vs 11.7, _p_=0.8)
- morning feel improved, also good (2.81 vs 2.71, _p_=0.3)
[^R-oneleg-analysis]: The `R` interpreter session, loading a CSV as before:
~~~{.r}
> t.test(Total.Z~SSCF.11, data=mydata)
Welch Two Sample t-test
data: Total.Z by SSCF.11
t = 0.8035, df = 48.455, p-value = 0.4256
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-17.09298 39.85727
sample estimates:
mean in group 0 mean in group 3
513.7750 502.3929
> t.test(Time.in.REM~SSCF.11, data=mydata)
Welch Two Sample t-test
data: Time.in.REM by SSCF.11
t = 2.4322, df = 54.225, p-value = 0.01834
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
2.827521 29.343907
sample estimates:
mean in group 0 mean in group 3
168.8000 152.7143
> t.test(ZQ~SSCF.11, data=mydata)
Welch Two Sample t-test
data: ZQ by SSCF.11
t = 1.3406, df = 56.26, p-value = 0.1854
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-1.754009 8.854009
sample estimates:
mean in group 0 mean in group 3
96.05 92.50
> t.test(Awakenings~SSCF.11, data=mydata)
Welch Two Sample t-test
data: Awakenings by SSCF.11
t = 0.3177, df = 62.634, p-value = 0.7518
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.9259517 1.2759517
sample estimates:
mean in group 0 mean in group 3
4.175 4.000
> t.test(Time.in.Wake~SSCF.11, data=mydata)
Welch Two Sample t-test
data: Time.in.Wake by SSCF.11
t = 0.2617, df = 65.521, p-value = 0.7944
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-7.033471 9.154900
sample estimates:
mean in group 0 mean in group 3
12.77500 11.71429
> t.test(Morning.Feel~SSCF.11, data=mydata)
Welch Two Sample t-test
data: Morning.Feel by SSCF.11
t = 1.0479, df = 64.65, p-value = 0.2986
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.1427046 0.4577229
sample estimates:
mean in group 0 mean in group 3
2.871795 2.714286
~~~
If we correct for multiple comparisons (see [previous footnote](#fn5) on the Bonferroni correction) at _q_-value=0.05, of our 6 _p_-values (0.01834, 0.1854, 0.2986, 0.4256, 0.7518, 0.7944), none of them survive:
~~~{.haskell}
let bh (index,pvalue) = pvalue < ((index * 0.05) / 6) in
map bh (zip [1..] [0.01834, 0.1854, 0.2986, 0.4256, 0.7518, 0.7944])
~>
[False,False,False,False,False,False]
~~~
Oh well! Statistics is a harsh mistress indeed.
If I count melatonin a success, then I ought to count one-legged standing as a (weaker, more qualified) success as well. Further, the one-legged standing was not in exclusion to melatonin use, but I had used it most every night; so I think I will go on using one-legged standing, perhaps skipping it on nights when I am up particularly late or lack the willpower.
## Push-ups
Rather than dumbbells (might be hard to find in the dark), I decided to try out push-ups since I routinely do 25 push-ups after showering and it ought to be mentally easy to shift those push-ups to before/after bedtime. As before, alternate-day, but with a twist: on-days, I do the push-ups immediately before going to bed, but off-days entail immediately upon awakening. (I don't exercise enough in general.)
<!--
September 2011
21: on
22: off
23; on
24: off
25: on
26: off
27: on
28: off
29: on
30: off
October 2011
1: on
2: off
3: on
4: off
5: on
6: off
7: on
8: off
9: on
10: off
11: on
12: off
13: on
14: off
15: on
16: off
17: on
...
November 2011
5: off
23: off
25: off
30: on
December 2011
1: off
2: on
5: off
6: on?
12: on
13: off
15: on
16: off
17: on
18: off
23: on
24: off
29: on
30: off
-->
# Vitamin D
## Background
[Seth Roberts has speculated](http://blog.sethroberts.net/category/sleep/vitamin-d3-and-sleep/) that [vitamin D](!Wikipedia), despite its myriads of [other benefits](Nootropics#vitamin-d), may harm sleep when taken in the evening and help sleep when taken in the morning based on some anecdotes (with [2 null results](http://blog.sethroberts.net/2012/02/03/vitamin-d3-and-sleep-story-11/)). The anecdotes are nearly worthless as sleep is pretty variable (look above or below, and you'll see swings of over 20 ZQ points night to night), and just a little carelessness or selection bias will persuade one that there is a major effect where there is none - especially since they are not using Zeos or accelerometers or even giving basic quantities like 'I felt bad in the morning 3/5 days'. But I began to wonder. Vitamin D is a chemical intimately involved in circadian rhythms (a '[zeitgeber](!Wikipedia)'), with some connections to systems involved in sleep (["The steroid hormone of sunlight soltriol (vitamin D) as a seasonal regulator of biological activities and photoperiodic rhythms"](http://www.unc.edu/~stumpfwe/steroid-hormone-of-sunlight-soltriol.pdf)); given its links to the *early* day and sunlight, one would expect it to affect sleep for the worse.
To see what, if any existing research there was, I checked the 49 hits in [PubMed](!Wikipedia) and the first 10 pages of [Google Scholar](!Wikipedia) for '"vitamin D" sleep'. For the most part, hits were completely irrelevant, and the most relevant ones like ["Vitamins and Sleep: An Exploratory Study"](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2174691/) did not cover any relationship between vitamin D and sleep, much less the *timing* of vitamin D consumption. There's some speculation the elderly may sleep badly in part due to lack of vitamin D (["Some new food for thought: The role of vitamin D in the mental health of older adults "](http://www.springerlink.com/content/g735r77159xq3550/)), but the only hard results I found were weak or tangential: a correlation with daytime sleepiness in Taiwanese dialysis patients[^Taiwan], a correlation with later sleep in American women[^America], and of course a correlation with earlier sleep in Japanese women[^Japan]. This reads like noise.
[^Taiwan]: ["Sleep Behavior Disorders in a Large Cohort of Chinese (Taiwanese) Patients Maintained by Long-Term Hemodialysis"](http://www.realfoodnutrients.com/Sleep/Studies/SleepBehaviorDisordersandVitaminD.pdf) (Chen et al 2006):
> "...The increased odds of high PSQI score for greater hemoglobin level and for high ESS score for use of vitamin D analogues were unexpected results for which we cannot speculate about the cause or association and that may simply be spurious findings arising from statistical analysis."
[^America]: ["Relationships among dietary nutrients and subjective sleep, objective sleep, and napping in women"](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2819566/) (Grandner et al 2010):
> "This study found a significant relationship between circadian phase of sleep and dietary Vitamin D intake. Later sleep acrophase, an indicator of sleep timing, was associated with more dietary Vitamin D. For most people, most Vitamin D is obtained through sunlight(44), though dietary Vitamin D is usually obtained through supplementation, usually in pills or in dairy products(44). It is currently unknown why those who consumed more Vitamin D would demonstrate a sleep phase delay, especially since in this same subject group, those exposed to more light had earlier circadian acrophases(45)."
[^Japan]: ["The midpoint of sleep is associated with dietary intake and dietary behavior among young Japanese women"](http://www.ncbi.nlm.nih.gov/pubmed/21296614) (Sato-Mito et al 2011):
> "Late midpoint of sleep was significantly negatively associated with the percentage of energy from protein and carbohydrates, and the energy-adjusted intake of cholesterol, potassium, calcium, magnesium, iron, zinc, vitamin A, vitamin D, thiamin, riboflavin, vitamin B(6), folate, rice, vegetables, pulses, eggs, and milk and milk products."
## Vitamin D at night hurts?
### Setup
I decided to run a small double-blind experiment much like the [Adderall](Nootropics#adderall-blind-testing) and other trials. My Vitamin D is 360 5000IU softgels by 'Healthy Origins', bought on `iHerb.com`. The gel-capsules contain [cholecalciferol](!Wikipedia) dissolved in olive oil. This made preparing placebo pills a little more difficult. I wound up puncturing the capsules, squeezing out the olive oil contents into a new capsule (they were too wide to push in) and then pushing in the empty shell; all 20 were topped off with ordinary white baking flour. (I used up the last of my creatine preparing the placebos for the [Modalert day trial](Nootropics#modalert-blind-day-trial).) For the 20 placebo pills, I spooned in some olive oil to each and topped them off with flour as well. Each set went into its own identical Tupperware container. The process was a little messier than I had hoped, but the pills seem like they will work.
The procedure at night will be: in the dark^[The problem was the original vitamin D3 capsule: I couldn't squeeze out *all* the oil, so I settled for squeezing out most, and then pushing the original capsule into the new capsule. So they contain everything they should, but they have a visible 'bubble' inside them (the original capsule). Hence, the need for literal blinding. Otherwise, they're pretty good: identical shape and weight.] immediately before putting on the Zeo headband and going to bed, I will take my usual melatonin pill; then I will take the two containers blindly; mix them up; select a pill from one to take, and put the selected container on the shelf next to the Zeo. In the morning, I will see which one I took. (The Vitamin D olive oil was distinctly more yellow than the green placebo olive oil.) If I took placebo, I will take my usual daily dose of Vitamin D, and if active, I will skip it. This hopefully will blind me and keep constant my total Vitamin D intake. (This procedure may need to be amended with something more like the modafinil/Adderall procedure: a bag with replacement of the consumed placebos.) If I get a run of one kind of pills, I will re-balance the numbers.
Based on the first 10 days' ZQs, I predict I'll find in the final data set:
1. increased sleep latency; probably at least another 10 minutes to fall asleep, as my mind seems to churn away with ideas of things to do
2. increased awakenings; not that many, maybe 1 or 2 on average
3. decreased ZQ; by around 5-10 points (a large effect, on par with melatonin)
My best guess is that the ZQ hit is coming from reduced deep sleep, or maybe reduced deep & REM sleep. I don't think the total amount of sleep has significantly changed.
Roberts theorizes that besides vitamin D damaging sleep, it could actively improve your sleep if taken in the morning. As it happens, in this setup, on 'placebo' days I do take vitamin D in the morning - so wouldn't one expect to see scores improve on the nights following a placebo night (a vitamin D morning), regardless of whether *that* night was vitamin D or placebo? A quick analysis of the first 24 nights showed the lagged nights to average a ZQ of 94.5. My monthly averages for October and November were 96, so there is no obvious improvement here.
One thing I suspect but cannot confirm - since I do not have a heart rate monitor - is that ~10 minutes after taking the vitamin D pills, my heart rate increases. Not to any uncomfortable or worrisome degree, but when one expects one's heart rate to go down after going to bed, even a small increase in the opposite direction is noticeable. On the 12th, I finally got around to writing down this impression; then I searched online a bit and found that low vitamin D levels are associated with arrhythmia and other issues, but so are very high levels, and increased heart rates in the studies and anecdotes are associated with higher heart rates^[See the general remarks in [LiveStrong](http://www.livestrong.com/article/448585-vitamin-d-deficiency-heart-rate/), ["Vitamin D warning: Too much can harm your heart"](http://www.msnbc.msn.com/id/45325473/ns/health-diet_and_nutrition/t/vitamin-d-warning-too-much-can-harm-your-heart/), and the 2009 study ["Relation of serum 25-hydroxyvitamin D to heart rate and cardiac work (from the National Health and Nutrition Examination Surveys)"](http://www.ncbi.nlm.nih.gov/pubmed/20102903).]. I'm not worried about the heart rate, but I am concerned that this is defeating the double-blinding: if all I have to do is notice my heart rate (and lying swaddled in bed in complete silence, it would be hard for me *not* to), then I've unblinded myself *before* falling asleep. Other stimulants like caffeine or sulbutiamine might similarly increase my heart rate, but they'd obviously also interfere with sleep, so I can't create any 'active placebo' even if I wanted to start over. (One promising future gadget is the ["Basis" wristwatch](http://mybasis.com/) which measures, among other things, heart-rate; I look forward to the early reviews.)
### Vitamin D data
The data ([trimmed CSV](/docs/2012-zeo-vitamind.csv)), covering January-February 2012:
Date Pill Quality[^q] ZQ Guess
---- ---- ------- --- -----
31D-1J active bad 84 [right 70%](http://predictionbook.com/predictions/5056)
1-2 placebo better 93 [right 65%](http://predictionbook.com/predictions/5096)
2-3 active well 94 [50%](http://predictionbook.com/predictions/5129)
3-4 active poor 86 [right 60%](http://predictionbook.com/predictions/5162)
4-5 placebo well 98 [wrong 60%](http://predictionbook.com/predictions/5179)
5-6 active mediocre 86 [50%](http://predictionbook.com/predictions/5195)
6-7 placebo OK ??[^e] [right 65%](http://predictionbook.com/predictions/5222)
7-8 placebo good 90 [right 60%](http://predictionbook.com/predictions/5238)
8-9 active poor 84 [right 65%](http://predictionbook.com/predictions/5270)
9-10 placebo good 95 [right 65%](http://predictionbook.com/predictions/5290)
10-11 active good 100 [wrong 70%](http://predictionbook.com/predictions/5311)
11-12 active mediocre 92 [right 70%](http://predictionbook.com/predictions/5318)
12-13 active mediocre 88 [50%](http://predictionbook.com/predictions/5325)
13-14 active poor 100 [right 60%](http://predictionbook.com/predictions/5361)
14-15 placebo poor 83 [wrong 60%](http://predictionbook.com/predictions/5375)
15-16 active poor 101 [right 55%](http://predictionbook.com/predictions/5384)
16-17 placebo mediocre 90 [50%](http://predictionbook.com/predictions/5391)
17-18 placebo mediocre 88 [right 60%](http://predictionbook.com/predictions/5400)
18-19 placebo good 100 [50%](http://predictionbook.com/predictions/5402)
19-20 active poor 86 [50%](http://predictionbook.com/predictions/5411)
20-21 active mediocre 85 [50%](http://predictionbook.com/predictions/5416)
21-22 placebo OK 91 [right 60%](http://predictionbook.com/predictions/5426)
22-23 placebo OK 106 [right 65%](http://predictionbook.com/predictions/5458)
23-24 active poor 91 [right 65%](http://predictionbook.com/predictions/5492)
24-25 active 1 79 [right 75%](http://predictionbook.com/predictions/5503)
25-26 placebo 3 85 [right 65%](http://predictionbook.com/predictions/5516)
26-27 active 2 ??[^e] [right 55%](http://predictionbook.com/predictions/5528)
28-29 active 3 85 [50%](http://predictionbook.com/predictions/5553)
29-30 active 3 93 [wrong 55%](http://predictionbook.com/predictions/5568)
30-31 placebo 3 100 [right 60%](http://predictionbook.com/predictions/5591)
31J-1F active 3 94 [50%](http://predictionbook.com/predictions/5607)
1F-2F active 2 89 [right 60%](http://predictionbook.com/predictions/5617)
2-3 active 1 83 [right 70%](http://predictionbook.com/predictions/5648)
3-4 placebo 2 81 [wrong 70%](http://predictionbook.com/predictions/5671)
5-6 placebo 3 98 [right 65%](http://predictionbook.com/predictions/5698)
6-7 active 2 88 [50%](http://predictionbook.com/predictions/5707)
7-8 active 2 94 [right 55% right](http://predictionbook.com/predictions/5737)
8-9 active 3 94 [wrong 75%](http://predictionbook.com/predictions/5745)
9-10 placebo 3 92 [50%](http://predictionbook.com/predictions/5760)
10-11 placebo 3 95 [right 60%](http://predictionbook.com/predictions/5770)
11-12 placebo 3 103 [right 75%](http://predictionbook.com/predictions/5775)
12-13 placebo 3 84 [right 70%](http://predictionbook.com/predictions/5780)
[^e]: Headband came loose at some point, data useless
[^q]: For 'Quality' & 'ZQ': higher = better
(Data input was for 'Other Disruptions 3'; 0 = placebo, 1 = vitamin D.)
### Vitamin D analysis
From a quick look at confidences, I was usually correct but perhaps underconfident.
Looking at the data averages in the Zeo website, it looked like ZQ & total & REM sleep fell, deep increased slightly, time awake & awakenings both increased, and morning feel decreased. The R analysis (pessimistic[^vitamin-D-analysis-p], optimistic[^vitamin-D-analysis-o]):
[^vitamin-D-analysis-p]: The usual session:
~~~{.r}
$ R
> mydata <- read.table("2012-zeo-vitamind.csv", header=TRUE, sep=",")
> t.test(ZQ~SSCF.12, data=mydata)
Welch Two Sample t-test
data: ZQ by SSCF.12
t = 1.9284, df = 36.417, p-value = 0.06163
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.2107102 8.4258132
sample estimates:
mean in group 0 mean in group 1
93.36842 89.26087
> t.test(Total.Z~SSCF.12, data=mydata)
Welch Two Sample t-test
data: Total.Z by SSCF.12
t = 1.8776, df = 33.985, p-value = 0.06904
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-1.738464 43.953567
sample estimates:
mean in group 0 mean in group 1
533.3684 512.2609
> t.test(Time.in.REM~SSCF.12, data=mydata)
Welch Two Sample t-test
data: Time.in.REM by SSCF.12
t = 2.4099, df = 31.155, p-value = 0.02205
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
2.278176 27.332808
sample estimates:
mean in group 0 mean in group 1
175.6316 160.8261
> t.test(Time.in.Deep~SSCF.12, data=mydata)
Welch Two Sample t-test
data: Time.in.Deep by SSCF.12
t = -0.6214, df = 38.235, p-value = 0.538
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-7.404045 3.925784
sample estimates:
mean in group 0 mean in group 1
55.00000 56.73913
> t.test(Time.in.Wake~SSCF.12, data=mydata)
Welch Two Sample t-test
data: Time.in.Wake by SSCF.12
t = -0.3332, df = 32.679, p-value = 0.7411
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-12.588395 9.046061
sample estimates:
mean in group 0 mean in group 1
26.31579 28.08696
> t.test(Awakenings~SSCF.12, data=mydata)
Welch Two Sample t-test
data: Awakenings by SSCF.12
t = -0.8485, df = 37.998, p-value = 0.4015
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-2.3089027 0.9450583
sample estimates:
mean in group 0 mean in group 1
7.578947 8.260870
> t.test(Morning.Feel~SSCF.12, data=mydata)
Welch Two Sample t-test
data: Morning.Feel by SSCF.12
t = 2.99, df = 32.596, p-value = 0.005276
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
0.1672538 0.8805931
sample estimates:
mean in group 0 mean in group 1
2.842105 2.318182
> t.test(Time.to.Z~SSCF.12, data=mydata)
Welch Two Sample t-test
data: Time.to.Z by SSCF.12
t = -0.6687, df = 32.607, p-value = 0.5084
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-12.779474 6.459107
sample estimates:
mean in group 0 mean in group 1
17.57895 20.73913
~~~
[^vitamin-D-analysis-o]: Note that our previous options were a little pessimistic:
1. the `R` t-test function does not assume variance is equal, even though I believe they would be
2. nor does it assume that the effect of Vitamin D is bad on ZQ - decreases ZQ, like I expected.
If we were willing to make those assumptions, then the tests have fewer possibilities to consider, and can make stronger claims. Let's take ZQ as an example. The straight Welch Two Sample t-test gives us _p_=0.06, as we already saw. But if we were willing to assume equal variance, that buys us -0.01 downwards to _p_=0.0581; a test for either null or negative effect gives us _p_=0.0308; and finally, assuming equal variance *and* testing for null/negative (rather than positive/null/negative) gives us _p_=0.029 - substantially better than the original _p_=0.06:
~~~{.r}
> t.test(ZQ~SSCF.12, data=mydata)
Welch Two Sample t-test
data: ZQ by SSCF.12
t = 1.9284, df = 36.417, p-value = 0.06163
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.2107102 8.4258132
sample estimates:
mean in group 0 mean in group 1
93.36842 89.26087
> t.test(ZQ~SSCF.12, data=mydata, alternative="great")
Welch Two Sample t-test
data: ZQ by SSCF.12
t = 1.9284, df = 36.417, p-value = 0.03082
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
0.5124493 Inf
sample estimates:
mean in group 0 mean in group 1
93.36842 89.26087
> t.test(ZQ~SSCF.12, data=mydata, var.equal=TRUE)
Two Sample t-test
data: ZQ by SSCF.12
t = 1.951, df = 40, p-value = 0.05809
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.1476258 8.3627288
sample estimates:
mean in group 0 mean in group 1
93.36842 89.26087
> t.test(ZQ~SSCF.12, data=mydata, alternative="great", var.equal=TRUE)
Two Sample t-test
data: ZQ by SSCF.12
t = 1.951, df = 40, p-value = 0.02905
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
0.5623672 Inf
sample estimates:
mean in group 0 mean in group 1
93.36842 89.26087
~~~
We'll re-run the analysis with appropriate options:
~~~{.r}
> t.test(ZQ~SSCF.12, data=mydata, alternative="great", var.equal=TRUE);
t.test(Total.Z~SSCF.12, data=mydata, alternative="great", var.equal=TRUE)
Two Sample t-test
data: ZQ by SSCF.12
t = 1.951, df = 40, p-value = 0.02905
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
0.5623672 Inf
sample estimates:
mean in group 0 mean in group 1
93.36842 89.26087
Two Sample t-test
data: Total.Z by SSCF.12
t = 1.9204, df = 40, p-value = 0.03098
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
2.599576 Inf
sample estimates:
mean in group 0 mean in group 1
533.3684 512.2609
> t.test(Time.in.REM~SSCF.12, data=mydata, alternative="great", var.equal=TRUE);
t.test(Time.in.Deep~SSCF.12, data=mydata, var.equal=TRUE)
Two Sample t-test
data: Time.in.REM by SSCF.12
t = 2.4936, df = 40, p-value = 0.00844
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
4.807836 Inf
sample estimates:
mean in group 0 mean in group 1
175.6316 160.8261
Two Sample t-test
data: Time.in.Deep by SSCF.12
t = -0.6225, df = 40, p-value = 0.5371
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-7.385555 3.907294
sample estimates:
mean in group 0 mean in group 1
55.00000 56.73913
> t.test(Time.in.Wake~SSCF.12, data=mydata, alternative="less", var.equal=TRUE);
t.test(Awakenings~SSCF.12, data=mydata, alternative="great", var.equal=TRUE)
Two Sample t-test
data: Time.in.Wake by SSCF.12
t = -0.3427, df = 40, p-value = 0.3668
alternative hypothesis: true difference in means is less than 0
95 percent confidence interval:
-Inf 6.931845
sample estimates:
mean in group 0 mean in group 1
26.31579 28.08696
Two Sample t-test
data: Awakenings by SSCF.12
t = -0.8513, df = 40, p-value = 0.8002
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
-2.030783 Inf
sample estimates:
mean in group 0 mean in group 1
7.578947 8.260870
> t.test(Morning.Feel~SSCF.12, data=mydata, alternative="great", var.equal=TRUE);
t.test(Time.to.Z~SSCF.12, data=mydata, alternative="less", var.equal=TRUE)
Two Sample t-test
data: Morning.Feel by SSCF.12
t = 2.8647, df = 39, p-value = 0.003344
alternative hypothesis: true difference in means is greater than 0
95 percent confidence interval:
0.2157825 Inf
sample estimates:
mean in group 0 mean in group 1
2.842105 2.318182
Two Sample t-test
data: Time.to.Z by SSCF.12
t = -0.6878, df = 40, p-value = 0.2478
alternative hypothesis: true difference in means is less than 0
95 percent confidence interval:
-Inf 4.57606
sample estimates:
mean in group 0 mean in group 1
17.57895 20.73913
~~~
1. 'ZQ' fell, 93.4 vs 89.3 (optimistic: _p_=0.062; pessimistic: _p_=0.029)
2. 'Total Z' fell, 533.4m vs 512.3m (_p_=0.07; _p_=0.031)
3. 'Time in REM' fell, 175.6m vs 160.8m (_p_=0.022; _p_=0.008)
4. 'Time in Deep' increased, 55m vs 56.74 (but _p_=0.54!)
5. 'Time in Wake' increased, 26.3m vs 28.1 (but _p_=0.74!)
6. 'Awakenings' increased, 7.58 vs 8.26 (but _p_=0.4)
7. 'Morning Feel' decreased, 2.84 vs 2.32 (_p_=0.0053; _p_=0.0033)
8. 'Time to Z' increased, 17.58m vs 20.74m (but _p_=0.51; _p_=0.25)^[This one really surprised me. I was convinced it was taking longer to get to sleep, which it was, but that the effect was consistent enough it'd reach at least _p_=0.1 or something.]
So we see the Deep & Wakening & Time to Z changes are weak-to-irrelevant, but on the other hand, we get highly significant changes in REM & Morning Feel (the latter even survives a multiple comparison correction[^d-multiple]), which look like they'd have pretty decent [effect sizes](!Wikipedia) too[^effect-size]. (I only calculated the effect size for ZQs: something like 0.58^[[Cohen's d](!Wikipedia) is the one I see most often; that's $\frac{\text{bigger mean} - \text{smaller mean}}{\text{std-dev}}$; placebo had a bigger mean of 93.3684 and Vitamin D a smaller ZQ mean of 89.2609, and an online tool told me the standard-deviation of all the ZQs was 7.0198, so: $\frac{93.3684 - 89.2609}{7.0198} = 0.585$], which is medium-sized^[[Wikipedia](!Wikipedia "Effect_size#.22Small.22.2C_.22medium.22.2C_.22large.22"): "For Cohen's _d_ an effect size of 0.2 to 0.3 might be a 'small' effect, around 0.5 a 'medium' effect and 0.8 to infinity, a 'large' effect."].)
[^d-multiple]: [Correcting for multiple comparisons](#fn5) at _q_-value=0.05, of our 8 pessimistic _p_-values (0.005276, 0.02205, 0.06163, 0.06904, 0.4015, 0.5084, 0.538, 0.7411), 1 survives:
~~~{.haskell}
let bh (index,pvalue) = pvalue < ((index * 0.05) / 8) in
map bh (zip [1..] [0.005276, 0.02205, 0.06163, 0.06904, 0.4015, 0.5084, 0.538, 0.7411])
~>
[True,False,False,False,False,False,False,False]
~~~
Remarkable - the first time a _p_-value survived. (That was the 'Morning Feel' one.)
[^effect-size]: A quick and dirty way is to look at the difference in the 2 means and compare it to what is the 'normal range' (intuitively something like a standard deviation or two), which in this case, my ZQ ranges normally from the mid-80s to the very low 100s (a range of ~20 points), and the difference in ZQ means is 4 points. So that's 1/5 the normal variability - that's nothing to sneeze at! (By a strange coincidence, this is almost the same sort of numbers as for grades in class, so we could analogize: not taking vitamin D at night would improve my sleep grades by one letter. When I was in school, I would not have turned my nose up at such an intervention.)
My previous (unblinded non-randomized) experiment with melatonin over half a year or so, which found a shift in mean ZQs of ~8 points. I was really impressed with melatonin when I first started (as have many people been), so to find vitamin D is half as hurtful as melatonin was helpful... I didn't have any plans to take vitamin D in the evening rather than morning, but I sure as heck don't now!
Going back to my predictions after the first 10 days, they're *sort* of right:
1. sleep latency was increased, but not statistically significantly and only by ~4m, which is less than half the predicted 10 minutes
2. increased awakenings was less than 1 additional awakening (compared to predicted 1-2) and didn't reach statistical significance
3. ZQ did decrease, and by roughly 4.1 points (reached statistical significance), but that's a bit under the tentatively predicted range of 5-10 points
Finally, a re-look at lagged days; the final data set yielded 20 lagged nights when the others were deleted, 14 when obvious outliers like ZQ <70 were removed for a total of 6 placebo nights and 8 vitamin D night. The ZQs averaged 92.6 - between the placebo ZQ average of 93.4 and the vitamin D ZQ average of 89.3, but much closer to placebo than vitamin D, despite being more vitamin D than placebo. The _p_-value would be pretty awful, though, for such small differences - just 14 datapoints?
My conclusion?
Vitamin D hurts sleep when taken at night. I know no reason to take vitamin D at that time, so even with anecdotal data, I will avoid it at that time entirely.
## Vitamin D at morn helps?
### Setup
The logical next thing to test is whether there is any benefit to sleep by taking vitamin D in the morning as compared to not taking vitamin D at all, since we have already established that evening is worse than morning. I would expect any benefits in the morning to be attenuated compared to the evening effect: the morning is simply many hours away from going to bed again in the evening, giving time for many events to affect the ultimate sleep. So this experiment will run for more than 40 days of 20/20, but 56 days of 28/28; per Roberts's suggestion, I will not randomize individual days but 8 paired *blocks* of 7 days. (Multiple days to give any slow effects time to manifest; 7 days, so we don't 'cycle around the week' but instead have exactly the same number of eg. active Sundays and placebo Sundays since sleep often varies systematically over the week.)
I prepare 27 placebo pills & 27 actives as before, stored in separate baggies. To randomize blocks of 7-days - I will fill 2 opaque containers with 7 placebo and 7 actives (with a label on the inside of the active container), and pick a container at random to use for the next 7 days. I will take one each morning upon awakening, closing my eyes. On the 8th morning, the first container will be empty, so I set it aside and open the second; when the second is emptied, I will look inside it to see whether it has the label, which lets me infer which one it was, and record whether the 2 weeks were active/placebo or placebo/active. The 2 containers will be refilled as before, and blocks 3-4 will begin. I will do this 4 times, at which point I will analyze the data.
<!--
### Morning data
1. Blocks:
- 17-25F: guess: placebo http://predictionbook.com/predictions/6026 (last pill used morning 25; swapped jars and consumed pill from second jar the morning of 26); actual: placebo
- 26F-8M: skipped multiple days for modafinil; actual: active
2. Blocks:
- 9M-15M:
- 16-?:
3. Blocks:
- 15-22:
- 29M-5A:
4. Blocks:
- 5A-12:
- 12-19:
### Morning analysis
-->
# Conclusions
This is what I have learned:
1. the Zeo headband is perfectly wearable after adjustment
2. melatonin improves my sleep
3. one-legged standing helps little or not at all
4. Vitamin D (at night) damages my sleep
# External links
- Vitamin D discussion:
- [Hacker News](http://news.ycombinator.com/item?id=3592017)
- Reddit: [1](http://www.reddit.com/r/Nootropics/comments/po3zk/psa_dont_take_vitamin_d_at_bedtime/), [2](http://www.reddit.com/r/fitnesscirclejerk/comments/po47w/so_i_heard_you_guys_like_vitamin_d_hopefully_not/)
- [Imminst](http://www.longecity.org/forum/topic/54364-vitamin-d-sleep-experiment/)
- [_Business Insider_ blog](http://www.businessinsider.com/this-is-what-happens-when-you-track-your-sleep-obsessively-2012-2)