Comment utiliser des splines cubiques restreintes avec le package d'imputation de souris R

8

Je me demande comment intégrer des splines cubiques restreintes (comme dans le package rms) dans les modèles d'imputation au sein du package d'imputation de souris R.

Contexte : Je fais de la recherche biomédicale et j'ai accès à un ensemble de données comprenant les caractéristiques des patients et des données sur la progression de la maladie du patient, à côté des résultats après les soins médicaux (par exemple, un an de survie). L'objectif est de construire un modèle de prédiction basé sur les caractéristiques des patients et la progression de la maladie afin de prédire la survenue de certains résultats. Hélas, certains patients ne disposent pas d'informations complètes sur toutes les variables. J'ai donc décidé d'utiliser plusieurs techniques d'imputation pour estimer (plusieurs fois) quelles seraient ces valeurs manquantes.

Problème : lors de l'utilisation de l'imputation multiple, il existe cette «règle» appelée convivialité. Cela signifie que l'imputation nécessite que le modèle statistique utilisé pour l'analyse finale (c'est-à-dire le modèle de prédiction que je souhaite étudier) soit également inclus dans le modèle d'imputation (de préférence avec des informations supplémentaires qui y sont ajoutées). Cela implique également de prendre en compte d'éventuelles associations non linéaires. Comme je ne sais pas si certains prédicteurs ont des associations non linéaires avec d'autres, j'aimerais que les modèles d'imputation puissent s'adapter à des splines cubiques restreintes. Cependant, je ne sais pas vraiment comment faire cela chez la souris. Je voudrais donc de l'aide pour créer des modèles d'imputation permettant le rcs, adaptés aux souris.


Sur un sidenote à tous les modérateurs: je pensais que cette question était adaptée pour Crossvalidated car l'imputation et les splines sont des sujets «statistiques» spécifiques. Cependant, en raison de l'accent mis sur la nature de la programmation de cette question `` comment '', cela ne me dérangerait pas que la question soit migrée si vous pensez qu'elle est plus appropriée ailleurs. Suite à ce doute, j'ai également posté cette question sur StackOverflow ( /programming/45674088/how-to-use-restricted-cubic-splines-with-the-r-mice-imputation-package )

IWS
la source
2
Si vous n'obtenez pas de réponses utiles, j'essayerais d'envoyer un e-mail au responsable du package, puis de poster une réponse à votre question ici. Je ne pense pas que vous obtiendrez beaucoup d'aide supplémentaire sur R-help car ils peuvent penser que c'est trop statistique.
mdewey
1
@mdewey merci pour l'astuce; Je vais essayer de revenir s'il y a quelque chose à montrer
IWS
2
J'ai ajouté une prime; mais, comme je l'ai noté, je pense que cela est inutilement limité. Autrement dit, une question plus importante est de savoir comment gérer les données manquantes avec des splines. Peut-être que le paquet perturb serait bon.
Peter Flom
1
@PeterFlom Merci d'avoir placé la prime. J'admettrai que demander des fonctionnalités spécifiques dans le package de souris est limitant. Je vais regarder dans le paquet perturb pour voir ce que je peux en apprendre. Comme vous l'avez suggéré dans le texte de prime, et dans votre question ici: stats.stackexchange.com/questions/301017/… , ayant une réponse générale si les associations non linéaires lors de l'imputation ajoutent au traitement des données manquantes, est d'un grand intérêt.
IWS

Réponses:

4

Vous avez raison de dire que le modèle d'imputation doit être aussi riche ou plus riche que le modèle de résultat. Le fait que l'imputation basée sur une estimation complète du maximum de vraisemblance et une imputation effectuée en micesupposant la linéarité partout était une des principales raisons pour lesquelles j'ai écrit la fonction de Hmiscpackage R aregImpute, qui crée automatiquement des modèles d'imputation à l'aide de modèles de splines cubiques restreintes additives riches. La linéarité n'est donc pas supposée pour l'imputation multiple. L'approche par défaut dans aregImputeest la correspondance moyenne prédictive, que je préfère généralement aux approches plus paramétriques (les splines sont toujours utilisées; PMM est moins paramétrique sur le côté gauche des modèles).

Comme mice, aregImputeutilise des équations chaînées. À la différence mice, il utilise des tirages bootstrap au lieu d'approches bayésiennes approximatives (en supposant une normalité multivariée).

Frank Harrell
la source
1
J'ai accepté cette réponse car @ frank-harrel traite de manière appropriée la gestion des associations non linéaires possibles lors de l'imputation dans le cadre général. Pour ceux qui étaient intéressés, je travaillais déjà sur des modèles d'imputation (par exemple PMM, régression linéaire, régression logistique) qui sont compatibles avec le package de souris de R et permettent des splines cubiques restreintes. Je les posterai comme réponse ici par souci d'exhaustivité plus tard, mais ces modèles ne seront pas testés. Donc, pour ceux qui ont un problème similaire, regardez et utilisez aregImpute.
IWS
1
@IWS ce serait une belle contribution, et vous pouvez continuer à le tester (y compris en montrant des résultats identiques avec micequand aucun noeud (linéarité) est utilisé) qui serait une bonne partie d'un package R. En faisant cela, vous pourriez comparer miceet aregImputecoder pour voir où miceest un peu lent et pourrait être accéléré.
Frank Harrell