Closed3
iPhone のヘルスケアアプリで記録したワクチン接種後の体温をRで可視化する
やったこと
コロナワクチン接種後、iPhone に default で入っているアプリ「ヘルスケア」で体温を記録し経過を辿っていた。
しかし、「ヘルスケア」では一度に表示できる期間が自由に指定できず、また、接種時刻や解熱剤を飲んだタイミングなどのアノテーションもしたかったので、Rでデータを読み込んで可視化してみることにした。
結果
「ヘルスケア」に記録した体温をどうエクスポートするか?
XML 形式で出力することができる。
「ヘルスケア」から出力した XML をどう R で読み込むか?
出力された XML には「ヘルスケア」アプリ内の全データが含まれていた。
この中から体温データだけ取り出して data frame に収める必要があった。
library(xml2)
library(XML)
health_data <- read_xml("data/export.xml")
parsed_health_data <- xmlParse(health_data)
temperature_nodeset <- getNodeSet(parsed_health_data, "//Record[@type='HKQuantityTypeIdentifierBodyTemperature']")
start_date <- sapply(temperature_nodeset, function(x) xmlGetAttr(x, "startDate"))
value <- sapply(temperature_nodeset, function(x) xmlGetAttr(x, "value"))
df_temperature <- data.frame(time=ymd_hms(start_date), temperature=as.numeric(value))
参考
このスクラップは2024/02/04にクローズされました