Bio Technical フォーラム

  • バイオ関連の実験をする上での、試薬、機器、プロトコールなどの情報交換の場です。
  • 新しいテーマで話を始める場合、質問をする場合は「新しいトピックを作る」から書き込みをしてください。
  • 質問に対して解答できる方は是非、書き込んで下さい。
  • このフォーラムにふさわしくないと管理人が判断した投稿は予告なく削除します。

新しいトピックを作る | トピック一覧 | 研究留学ネットに戻る

ひとつ前のフォーラム(readのみ)

このスレッドをはてなブックマークに追加このスレッドをはてなブックマークに追加

Rで欠損値補完をしたデータの取扱いについて トピック削除
No.11119-TOPIC - 2023/01/16 (月) 22:18:30 - Jun
臨床研究の内容なので掲示板の趣旨とは少しずれるかも知れないのですが・・・

これまでEZRを使って臨床データの解析をしてきたのですが、今回multiple imputationを使ったデータ解析が必要になり、急遽Rに手を出し始めました。
miceというパッケージを使ってmultiple imputationを実施し、以下の様にcox比例ハザード解析を行う、というところまではどうにかたどり着いたのですが、

df_miced <- mice(subset (original_data, select = c(Age, Sex, ・・・), m = 20, maxit = 50, method = "pmm", seed = 123456))
imp <- with(data = df_miced, coxph(Surv(Time.to.death, Death==1)~Age + Sex + ・・・, method="breslow"))
miced_pool <- pool(imp)
Cox.pool<- summary(miced_pool)

ここで表示される結果について、以下の3点お聞きできればと思います。

@ 代入データセット数をm=20に指定したのですが、できあがったデータセットをみるとどうやらm=5で処理されているようです。20の所に別の数字を入れても、m=5で結果が返ってきてしまうのですが、何か理由があるのでしょうか?


A Cox回帰の結果のところで、

term estimate std.error statistic df p.value
1 変数1 -0.59513944 0.12295825 -4.840175 80.95212 6.114659e-06
2 変数2 0.04677282 0.01289991 3.625826 92.87740 4.701927e-04
3 変数3 0.02113984 0.01224786 1.726002 82.02069 8.811241e-02
4 変数4 -0.16816287 0.05057106 -3.325279 82.08299 1.322287e-03

となったのですが、各変数をHRで示した数値(e^estimate)と、その95%CIを自動で導くにはどうしたらよいでしょうか?(一個一個手計算すれば出るのはわかるのですが、どうにか自動で出せないものでしょうか?)


B 今回作ったimputed database (df_miced)に対して、新規の変数を追加する方法はあるのでしょうか?例えば、作り出された全てのデータセットにおいて、Ageに関して65歳以上なら1, 64歳以下なら0を与えるような変数を追加するには、どうしたらよいでしょうか?


Rスクリプトに数式を入力する作業など今日初めて挑戦したくらいで、まだ全然基本がつかめていないと思うのですが、初心者でも何とか結果にたどり着けるようにご指導いただけると大変助かります・・・
 
- このトピックにメッセージを投稿する -



1件 ( 1 〜 1 )  前 | 次  1/ 1. /1


Rで欠損値補完をしたデータの取扱いについて 削除/引用
No.11119-1 - 2023/01/16 (月) 22:18:30 - Jun
臨床研究の内容なので掲示板の趣旨とは少しずれるかも知れないのですが・・・

これまでEZRを使って臨床データの解析をしてきたのですが、今回multiple imputationを使ったデータ解析が必要になり、急遽Rに手を出し始めました。
miceというパッケージを使ってmultiple imputationを実施し、以下の様にcox比例ハザード解析を行う、というところまではどうにかたどり着いたのですが、

df_miced <- mice(subset (original_data, select = c(Age, Sex, ・・・), m = 20, maxit = 50, method = "pmm", seed = 123456))
imp <- with(data = df_miced, coxph(Surv(Time.to.death, Death==1)~Age + Sex + ・・・, method="breslow"))
miced_pool <- pool(imp)
Cox.pool<- summary(miced_pool)

ここで表示される結果について、以下の3点お聞きできればと思います。

@ 代入データセット数をm=20に指定したのですが、できあがったデータセットをみるとどうやらm=5で処理されているようです。20の所に別の数字を入れても、m=5で結果が返ってきてしまうのですが、何か理由があるのでしょうか?


A Cox回帰の結果のところで、

term estimate std.error statistic df p.value
1 変数1 -0.59513944 0.12295825 -4.840175 80.95212 6.114659e-06
2 変数2 0.04677282 0.01289991 3.625826 92.87740 4.701927e-04
3 変数3 0.02113984 0.01224786 1.726002 82.02069 8.811241e-02
4 変数4 -0.16816287 0.05057106 -3.325279 82.08299 1.322287e-03

となったのですが、各変数をHRで示した数値(e^estimate)と、その95%CIを自動で導くにはどうしたらよいでしょうか?(一個一個手計算すれば出るのはわかるのですが、どうにか自動で出せないものでしょうか?)


B 今回作ったimputed database (df_miced)に対して、新規の変数を追加する方法はあるのでしょうか?例えば、作り出された全てのデータセットにおいて、Ageに関して65歳以上なら1, 64歳以下なら0を与えるような変数を追加するには、どうしたらよいでしょうか?


Rスクリプトに数式を入力する作業など今日初めて挑戦したくらいで、まだ全然基本がつかめていないと思うのですが、初心者でも何とか結果にたどり着けるようにご指導いただけると大変助かります・・・

1件 ( 1 〜 1 )  前 | 次  1/ 1. /1


パスワードを入力してチェックした記事を チェックした記事を

このトピックにメッセージを投稿する
名前 
メール   アドレス非公開
   タイトル 
本文      
設定  クッキーを保存(次回の入力の手間を省けます)
上に上げない(トピックの一覧で一番上に移動させません)
解決(問題が解決した際にチェックしてください)
暗証  半角英数字8-12文字の暗証番号を入れると、あとで削除、修正ができます。
送信 

〔使い方〕
  • 「アドレス非公開」をチェックすれば、自分のメールアドレスを公開しないで他の方からメールを受け取れます。
  • 問題が解決した際には、解決ボタンをチェックして解決した旨のコメントをつけてください。これは、初めにトピックを作った人と管理人のみが可能です。
  • 半角カタカナ、機種依存文字(全角ローマ数字、○の中の数字等)は文字化けの原因となりますので使わないでください。