陳小寧,郭 進,羅文佳,慕雨欣,劉 瓊
(西南財經大學天府學院 四川 綿陽 621000)
大數據在各個行業不斷應用,健康數據因涉及到個人及社會發展而具有重要價值。特別是在老齡化和流行傳染病肆虐的背景下,健康大數據不僅給社會提供了及時的數據,還展現了防控趨勢。健康大數據管理平臺的建立日趨重要[1]。
本文研究工作是設計實現面向線上用戶的人體健康參數數據管理平臺[2],前期數據收集通過用戶填寫的數據以及網絡獲取的健康數據,借助分布式平臺實現數據存儲、查詢、統計及可視化功能,為用戶建立人體健康參數管理平臺,用戶可以了解疾病知識、健康咨詢以及健康情況[3]。總體功能包含以下模塊:數據清洗、數據存儲、數據查詢與統計、web前端數據可視化分析。
(1)導入數據——數據導入利用Python的Pandas數據包實現,Panda提供了高效地操作大型數據集所需的工具。調用pandas庫中的read_csv函數,讀取本機的csv文件,對數據進行初步的分析與清洗。(2)缺失值處理——運用.isnull().any()列級別的判斷并且進行缺失值處理。
(1)啟動Hadoop——啟動成功后輸入jps命令查看節點啟動情況。(2)上傳數據文件,在HDFS中為hadoop創建用戶目錄,把本地文件平臺的’/home/hadoop/data.csv’上傳到HDFS的當前用戶的input目錄下。(3)查詢數據——使用cat命令查看在導入數據過程中是否有數據缺失。
(1)啟動Spark——輸入:’usr/local/spark/bin/spark-shell’啟動Spark,然后導入相應包。(2)讀取文件——使用textFile()函數傳遞一個完整路徑的文件名,把data.csv文件加載到RDD中。(3)SparkSQL數據分析,使用RDD中的first函數返回RDD查看文件內容,查看數據字段是否上傳完整,數據去重,結果添加到Mysql數據庫中。
2.4.1 主頁
主頁包括本平臺的Logo、導航、核心主題以及各個頁面的鏈接,給予新用戶對本平臺一個大概的了解。
2.4.2 疾病庫頁
可以查看當前所有的科室,選擇相應的科室查詢相應的疾病信息。根據用戶所選的疾病,平臺可以返回該疾病的詳細介紹。
2.4.3 個人檔案頁面
通過填寫相應的表格,完善自己的健康報告,并可以即時查閱健康數據,獲取相關建議。
2.4.4 數據分析化頁面
根據健康數據庫中的數據,展現各種統計圖,用戶可以查看整體的健康情況,醫療機構當前的健康趨勢制定政策,早做好防治措施。目前數據分析包括:高血壓及相關因素分析、身高體重分析、睡眠分析、人體溫度心率及性別分析和步數分析。
2.4.5 健康前沿頁面
當期的醫療健康熱點、資訊的宣傳,豐富網站內容。
高血壓及相關因素分析——從年齡段來看,40~60歲都是高發期;從職業來看,工人發病率最高;從性別來看,女性發病率高于男性發病率;從區域分布來看,城市發病率高于鄉村發病率;總體來說,高血壓的產生會受很多因素的影響,比如男女由于體質因素、身高、年齡、血黏度、精神狀態、生活節奏、個人差異、飲食習慣、遺傳等等。
身高體重分析:可以看出,女性的身高分布區間大概在148 cm~184 cm,體重大概在42 kg~105 kg,平均身高為160 cm,平均體重為60.6 kg;男性的身高分布區間大概在158 cm~198 cm,體重大概在55 kg~155 kg,平均身高為180 cm,平均體重為78.14 kg。
睡眠分析:約四分之三的人認為自己沒有擁有充足的睡眠,同樣有四分之三的人睡覺時要把手機放在伸手可及的地方,說明手機的放置位置對睡眠有一定程度的影響;據統計,每晚睡7個小時的占比最高,其中勞累程度為3等級的人最多。
人體溫度、心率及性別分析:女性的平均體溫略高于男性,女性的新陳代謝比男性快,體溫會高0.2℃~0.5℃左右;總體來看,人體溫度約為36.8℃。
心率分析圖:女性平均心率略高于男性,約為74次每分鐘;男性平均心率約為73次每分鐘,總體來看,女性的平均心率高于總體平均心率,患心律失常的比例會更高。
體溫與心率相關性分析:心率與體溫呈正相關,人體發熱時,心率會加快,體溫每升高1℃,心率平均增加12~18次/分;而低溫麻醉時,心率會減慢。體溫的高低在一定條件下會影響心率的速度。
本論文以用戶的健康參數數據作為切入點,設計并實現了基于大數據框架的人體健康參數管理分析平臺,借助云平臺,大數據的優勢,給予用戶健康數據的查詢統計分析等服務,不僅讓用戶更便捷地了解到自身的健康狀況,同時提供給了相關醫療健康部門數據,從而做到更好的防控治療。