R語言使用scitable包交互效應深度挖掘一個陌生數據庫

很多新手剛才是總是覺得自己沒什么可以寫的,自己不知道選什么題材進行分析,使用scitable包后這個完全不用擔心,選題多到你只會擔心你寫不完,寫得不夠快。
今天演示一下使用scitable包深度挖掘一個陌生數據庫

先導入R包和數據

library(survival)
library(scitable)
setwd("E:/r/test")
bc<-read.csv("qztp.csv",sep=',',header=TRUE)

在這里插入圖片描述
這個是個來自私人創建的醫院內部數據庫,我一個朋友的,變量我就不解釋了,這個數據有141個變量,605個數據。變量非常多。我們先把變量導出來

dput(names(bc))

在這里插入圖片描述
像"SID", “REGDATE”, “REGUID”, "Q1"這些變遷。日期人員的變量沒有什么意義,直接刪掉,然后定義我們需要研究的全部變量

allVars <-c("Q1120", "Q657", "Q344", "Q27501", "Q27502", "Q27503", "Q18805", "Q13028", "Q27272", "Q27271", "Q27269", "Q27270", "Q79", "Q82", "Q27410_1", "Q27410_2", "Q27410_3", "Q27410_4", "Q27410_5", "Q27410_6", "Q27410_7", "Q27410_8", "Q27410_9", "Q27410_10", "Q27410_11", "Q27410_12", "Q27410_13", "Q27410_14", "Q27410_15", "Q27273", "Q27277", "Q27406", "Q27291", "Q3806", "Q27204", "Q27279", "Q27278", "Q27297", "Q27284", "Q27299", "Q27282", "Q27280", "Q27283", "Q27205", "Q27507_1", "Q27507_2", "Q27507_3", "Q27507_4", "Q27507_5", "Q27507_6", "Q27506_1", "Q27506_2", "Q27506_3", "Q27506_4", "Q27506_5", "Q27506_6", "Q27506_7", "Q27508_1", "Q27508_2", "Q27508_3", "Q27508_4", "Q27508_5", "Q27201", "Q1865", "Q27192", "Q27206", "Q27207", "Q27208", "Q27286", "Q27358", "Q27359", "Q27302_1", "Q27302_2", "Q27302_3", "Q27302_4", "Q27302_5", "Q27302_6", "Q27302_7", "Q27302_8", "Q27302_9", "Q27302_10", "Q27302_11", "Q27302_12", "Q27302_13", "Q27302_14", "Q20503", "Q27407", "Q27301", "Q434", "Q592", "Q1432", "Q441", "Q368", "Q897", "Q374", "Q1066", "Q802", "Q804", "Q1671", "Q6000", "Q371", "Q572", "Q1308", "Q27509", "Q27510_1", "Q27510_2", "Q27510_3", "Q27510_4", "Q27510_5", "Q27510_6", "Q27510_7", "Q27510_8", "Q27510_9", "Q27510_10", "Q27510_11", "Q27510_12", "Q27510_13", "Q27510_14", "Q79.1", "Q79.2", "BMI", "Q27272.NEW", "Q27271.NEW", "Q13028.NEW", "Q27406.CS", "Q27406.CS.NEW", "Q18805.NEW", "Q1432.T3", "BMI.CS", "Q1432.T3.CONT", "Q344.CS", "白球比", "血淋比", "Q27278.NEW", "Q27278.NEW1", "Q27406.NEW", "Q1432YA")

然后定義一下咱們研究的類型,統一定義為“glm”

family<-"glm"   #你的研究類型

然后在organizedata2函數中放入數據和全部研究變量

out<-organizedata2(data = bc,allVars = allVars,family=family,username=username,token=token)

在這里插入圖片描述
咱們可以看到函數報錯了,主要是Q27410_13這個變量只有一個類型,屬于不合格的變量需要刪掉

在這里插入圖片描述
所以咱們要在allVars中刪除函數報錯,不合格的變量,直到沒有報錯位置。
有的人可能會說,變量太多了,自己一個個刪太麻煩了。函數還提供了一個探索模式

out<-organizedata2(data = bc,allVars = allVars,family=family,username=username,token=token,explore = T)

在這里插入圖片描述
上圖函數提示上面的變量都被刪除了。咱們再out中提出整理好的數據,所有變量和分類變量

data<-out[["data"]]
fvars<-out[["factorvarout"]]
allVars<-out[["allVars"]]

整理好數據以后就可以進一步分析,假設咱們的研究變量、觀察變量和模型如下

x<-"Q1432"    #你研究的變量
y<-"Q3806"    #你的結局變量
family<-"glm"   #你的研究類型

這個時候我想先挖掘一下數據,看看哪些變量和Y關聯

var<-allVars
tb2<-scitb2(data=data,x=var,y=y,family = family,username=username,token=token)

在這里插入圖片描述

小于0.05的變量都是和結局有關聯的,咱們來看下咱們關心的變量"Q1432"和結局的情況

在這里插入圖片描述
咱們發現"Q1432"和結局并無關聯,是不是這個變量就沒有意義了呢?別急著下結論,咱們來進行更加深度的交互效應挖掘,其實就是看各個亞組之間,"Q1432"和結局和結局的關系分層這里放入所有的交互變量就行

Interaction<-fvars
tb5.a<-scitb5a(data=data,x=x,y=y,Interaction=Interaction,cov = cov3,family=family,username=username,token=token)

在這里插入圖片描述

做了交互效應分析以后,咱們發現兩個問題,雖然"Q1432"和結局并無關聯,但是再Q27278這個亞組,當Q27278等于0的時候,"Q1432"和結局是線性相關的,理論上有一個亞組相關就可以寫一篇文章。
為什么會這樣,舉個簡單的例子,假設你要研究尿酸和痛經的關系?我們知道男性不可能痛經的,但是男性喝酒可能尿酸又高,你的數據中要是男性過多的化就會對結果造成影響,因此,性別就是一個混雜因素,性別分層以后就能得到女性尿酸和痛經的關系,等于是個消除混雜的處理。

交互效應中深度挖掘數據關聯通常有兩種情況:

**1.**在觀察變量和結局沒有關聯,亞組卻發現了有關聯意義(咱們數據的情況)

**2.**在觀察變量和結局有關聯,亞組中卻發現關聯明顯減弱了,拮抗效應,交互P值小于0.05

第二種情況我拿個文章舉例說明

在這里插入圖片描述

空腹血糖濃度之間的縱向關聯中國高血壓成人首次卒中:葉酸的影響干預

這篇文章說的是血糖濃度越高,腦梗死發生率越高

在這里插入圖片描述
但是使用葉酸以后,血糖高的患者,腦梗風險明顯下降

在這里插入圖片描述
表明葉酸是保護因素,其實做法很簡單,就是把是否使用葉酸做個分類變量,然后做個交互效應分析而已。寫法可以參照這篇文章。

我還想說的是再亞組分段中,咱們把Q1432也做了分段,看到再2這個2亞組中也是有關聯的

在這里插入圖片描述
表明有可能Q1432有一段是有線性關聯的,咱們可以通過ggmgcv函數來觀察

library(ggscitable)
out2<-ggmgcv(data = data,x="Q1432",y="Q3806",family = "gaussian",username=username,token=token)

在這里插入圖片描述
最后發現Q1432其實和結局是非線性關聯,當Q1432大于120左右,Q1432和結局是線性關聯。具體分析還是要通過分段和閾值分析。

最后展望一下

Sctb2和scitb5函數都是線性關系的判斷,將來會編寫一個圖形化判斷非線性數據關系的函數

看文字不明白的還有視頻介紹

R語言使用scitable包深度挖掘一個陌生數據庫

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/897262.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/897262.shtml
英文地址,請注明出處:http://en.pswp.cn/news/897262.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

電腦內存智能監控清理,優化性能的實用軟件

軟件介紹 Memory cleaner是一款內存清理軟件。功能很強&#xff0c;效果很不錯。 Memory cleaner會在內存用量超出80%時&#xff0c;自動執行“裁剪進程工作集”“清理系統緩存”以及“用全部可能的方法清理內存”等操作&#xff0c;以此來優化電腦性能。 同時&#xff0c;我…

C#控制臺應用程序學習——3.8

一、語言概述 1、平臺相關性 C# 主要運行在.NET 平臺上。.NET 提供了一個龐大的類庫&#xff0c;C# 程序可以方便地調用這些類庫來實現各種功能&#xff0c;如文件操作、數據庫訪問、網絡通信等。 2、語法風格 C# 的語法與 C、C 和 Java 有一定的相似性。例如&#xff0c;它使用…

鴻蒙HarmonyOS-Navagation基本用法

Navagation基本用法 Navigation組件是路由導航的根視圖容器&#xff0c;一般作為Page頁面的根容器使用&#xff0c;其內部默認包含了標題欄&#xff0c;內容欄和公工具欄&#xff0c;其中內容區默認首頁顯示導航內容&#xff08;Navigation的子組件&#xff09;或非首頁顯示&am…

初階數據結構(C語言實現)——4.1棧

目錄 1.棧1.1棧的概念及結構1.2 棧的實現1.1.0 棧的初始化1.1.1 銷毀1.1.2 入棧1.1.3 出棧1.1.4 獲取棧中有效元素個數1.1.5 檢測棧是否為空&#xff0c;如果為空返回非零結果&#xff0c;如果不為空返回01.1.6 獲取棧頂元素1.1.7 驗證 附錄 棧的C語言實現源碼.h文件.c文件test…

計算光學成像與光學計算概論

計算光學成像所涉及研究的內容非常廣泛&#xff0c;雖然計算光學成像的研究內容是發散的&#xff0c;但目的都是一致的&#xff1a;如何讓相機記錄到客觀實物更豐富的信息&#xff0c;延伸并擴展人眼的視覺感知。總的來說&#xff0c;計算光學成像現階段已經取得了很多令人振奮…

什么樣的物聯網框架適合開展共享自助KTV唱歌項目?

現在物聯網的廣泛應用&#xff0c;也讓更多用戶們看到了它的實力&#xff0c;也使得共享經濟遍地開花。其中共享自助唱歌設備也備受歡迎&#xff0c;那么適合開展共享自助KTV唱歌項目的物聯網框架都應具備哪些特點呢&#xff1f; 智能化與自動化管理 物聯網技術在共享KTV中的應…

機器視覺選型中,不同焦距的鏡頭成像視野有什么不同?

不同焦距的鏡頭成像視野的差異主要體現在視角范圍和透視效果上。焦距越長&#xff0c;視角越窄&#xff0c;能捕捉的景物范圍越小&#xff1b;焦距越短&#xff0c;視角越廣&#xff0c;覆蓋的景物范圍越大。以下是具體分析&#xff1a; 焦距與視角的關系 焦距&#xff08;Foc…

Linux16-數據庫、HTML

數據庫&#xff1a; 數據存儲&#xff1a; 變量、數組、鏈表-------------》內存 &#xff1a;程序運行結束、掉電數據丟失 文件 &#xff1a; 外存&#xff1a;程序運行結束、掉電數據不丟失 數據庫&#xff1a; …

開源訂貨系統哪個好 三大訂貨系統源碼推薦

在數字化轉型加速的今天&#xff0c;企業對訂貨系統的需求日益增長。一款優質的訂貨系統源碼不僅能提升供應鏈效率&#xff0c;還能通過二次開發滿足個性化業務需求。這里結合 “標準化、易擴展” 兩大核心要求&#xff0c;為您精選三款主流訂貨系統源碼&#xff0c;助您快速搭…

行為模式---迭代器模式

概念 迭代器模式是設計模式的行為模式&#xff0c;它的主要設計思想是提供一個可以操作聚合對象&#xff08;容器或者復雜數據類型&#xff09;表示&#xff08;迭代器類&#xff09;。通過迭代器類去訪問操作聚合對象可以隱藏內部表示&#xff0c;也可以使客戶端可以統一處理…

Maven的學習以及安裝配置 2024/3/1 idea

1. Maven的安裝 1.1 首先查看編程工具合適的Maven版本 我使用的是2024/3/1 版本的idea&#xff0c;接下來我會用這個版本的idea進行演示。idea沒有漢化的也可以參考我的步驟。 1、打開idea的設置&#xff0c;搜索Maven&#xff0c;進入Maven設置。 我們可以看到&#xff0c;…

基于 Docker 的跨平臺鏡像構建與增量更新實戰指南

引言&#xff1a;破解容器化兩大核心問題 在實際開發中&#xff0c;我們常常面臨兩個棘手問題&#xff1a; 跨平臺兼容性&#xff1a;如何在Windows平臺開發的鏡像&#xff0c;無縫運行在 ARM64 服務器&#xff1f;更新效率低下&#xff1a;每次代碼調整都要重新安裝全部依賴…

支付通道開通對接一般需要多少錢

不少老板都想開通AIP線上接口&#xff0c;但是不知道這個成本到底是多少? 其實目前第三方支付公司對外提供了標準的線上接入技術方案&#xff0c;一般以API、SDK等形式。因此&#xff0c;商戶在完成簽約審核后&#xff0c;可以順利拿到技術的密鑰&#xff0c;正常調用第三方支…

什么是 spring 的循環依賴?

什么是 spring 的循環依賴&#xff1f; 首先&#xff0c;認識一下什么是循環依賴&#xff0c;舉個例子&#xff1a;A 對象被 Spring 管理&#xff0c;并且引入的 B 對象&#xff0c;同樣的 B 對象也被 Spring 管理&#xff0c;并且也引入的 A 對象。這種相互被引用的情況&#…

thrift軟件、.thrif文件和thrift協議是什么關系,有什么用

Thrift軟件、.thrift文件和Thrift協議是Apache Thrift框架的三個核心組成部分&#xff0c;它們協同實現跨語言服務的高效開發與通信。以下是三者關系及作用的詳細解析&#xff1a; 一、核心組件關系 1. Thrift軟件&#xff08;框架&#xff09; ? 定位&#xff1a;Apache Th…

STM32旋轉編碼器驅動詳解:方向判斷、卡死處理與代碼分析 | 零基礎入門STM32第四十八步

主題內容教學目的/擴展視頻旋轉編碼器電路原理&#xff0c;跳線設置&#xff0c;結構分析。驅動程序與調用。熟悉電路和驅動程序。 師從洋桃電子&#xff0c;杜洋老師 &#x1f4d1;文章目錄 一、旋轉編碼器原理與驅動結構1.1 旋轉編碼器工作原理1.2 驅動程序結構 二、方向判斷…

elementplus的cascader級聯選擇器在懶加載且多選時的一些問題分析

1. 背景 在之前做的一個項目中使用到了element的級聯選擇器&#xff0c;并且是需要懶加載、多選、父子不關聯等等&#xff0c;在選的時候當然沒問題&#xff0c;但是回顯的時候就會回顯不出來&#xff0c;相信大部分伙伴都遇到過這個問題。我在以前出過一篇文章寫過關于級聯選…

【Python運維】用Python自動化AWS資源管理:利用boto3實現高效管理S3桶和EC2實例

《Python OpenCV從菜鳥到高手》帶你進入圖像處理與計算機視覺的大門! 解鎖Python編程的無限可能:《奇妙的Python》帶你漫游代碼世界 隨著云計算的普及,AWS(Amazon Web Services)已經成為許多企業和開發者首選的云平臺。為了提高工作效率,自動化管理AWS資源成為了一個熱…

淘寶關鍵字搜索接口爬蟲測試實戰指南

在電商數據分析和市場研究中&#xff0c;通過關鍵字搜索獲取淘寶商品信息是一項重要任務。淘寶開放平臺提供了 item_search 接口&#xff0c;允許開發者通過關鍵字搜索商品&#xff0c;并獲取商品列表及相關信息。本文將詳細介紹如何設計并測試一個基于該接口的爬蟲程序&#x…

【Linux實踐系列】:用c語言實現一個shell外殼程序

&#x1f525;本文專欄&#xff1a;Linux Linux實踐項目 &#x1f338;博主主頁&#xff1a;努力努力再努力wz 那么今天我們就要進入Linux的實踐環節&#xff0c;那么我們之前學習了進程控制相關的幾個知識點&#xff0c;比如進程的終止以及進程的等待和進程的替換&#xff0c;…