Je voudrais savoir s'il est possible d'obtenir des onglets de script non enregistrés dans R studio. J'ouvre accidentellement et passe à un nouveau projet, puis mes scripts non enregistrés ont disparu. Quelqu'un peut-il m'aider à obtenir mes onglets de script non enregistrés?.
Je suppose que vous utilisez Rstudio. En règle générale, il stocke l'intégralité de l'espace de travail, y compris les scripts non enregistrés et l'historique de la console, comme c'est le cas même si vous ne l'enregistrez pas.
Il y a deux choses que vous pouvez faire pour récupérer le code dans ces scripts selon que vous avez exécuté les fichiers ou non.
J'espère que cela t'aides.
Si vous êtes sous Windows, accédez au dossier:
C:\Users\[your user]\AppData\Local\RStudio-Desktop\sources
où se trouvent tous vos onglets non enregistrés dans les dossiers, en particulier ceux qui commencent par s
comme s-******
.
Il existe deux types de fichiers (par exemple, D395C3B4
et D395C3B4-contents
)D395C3B4
le fichier contient des informations JSON sur votre onglet non enregistré (eg. "tempName" : "Untitled76")
et vos codes correspondants sont dans D395C3B4-contents
fichier.
Ouvert D395C3B4-contents
avec le bloc-notes.
Si quelqu'un cherche toujours la réponse ou cherchera à l'avenir, veuillez lire l'approche de travail ci-dessous
Pour autant que je sache, il n'y a pas de moyen simple de restaurer les onglets de script non enregistrés lors de la dernière session ou avant le crash de Rstudio. Le dossier du projet contient généralement le dossier caché . Rproj.user avec de nombreux sous-dossiers, source database
est l'un d'entre eux (brièvement appelé sdb ). Dans les sous-dossiers dans sdb ayant le préfixe "s -" , vous pouvez trouver presque tous les onglets de script non enregistrés au format JSON. Vous pouvez les copier et les utiliser pour obtenir le contenu des onglets de script non enregistrés.
Par exemple, j'ai un fichier nommé BDFFFF92
est présent dans l'emplacement du projet .Rproj.user/586F3E74/sdb/s-DB8D414F/
# reading the JSON file
dataObj <- jsonlite::fromJSON('.Rproj.user/586F3E74/sdb/s-DB8D414F/BDFFFF92', simplifyVector = T)
Le contenu réel dans les scripts non enregistrés sera présent dans contents
de l'objet JSON.
# Printing the content from the JSON object
writeLines(dataObj$contents)
À tous ceux qui n'ont pas pu récupérer leur script même avec le .Rhistory:
Je pourrais récupérer la mienne en recherchant dans le dossier "AppData", situé dans votre lecteur de travail. Pour mon cas, il se trouvait dans "C:\Users\my_user\AppData\Local\RStudio-Desktop". Ensuite, il y a un fichier appelé "history_database" qui l'ouvrait avec le bloc-notes que je pouvais voir TOUS mes codages précédents.
Si vous rouvrez ce fichier dans Rstudio, vous pouvez le voir comme un historique de journal. S'il est trop gros pour voir toutes les entrées, copiez-le simplement dans un bloc-notes et ouvrez-le à nouveau avec R (Ctrl + O). Je ne sais pas pourquoi je n'ai vu cette alternative nulle part ailleurs ...
Je ne fais que commencer dans R, donc pour réorganiser à nouveau le script, j'ai copié "l'historique semblable à un journal" affiché dans R dans un fichier Excel, puis je les ai séparés par du texte en colonnes d'une largeur fixe. C'est ce qui a fonctionné pour moi, aucune autre méthode de récupération ne l'a fait.
Les projets RStudio peuvent être déroutants au début. En termes plus simples, le projet RStudio fait deux choses:
setwd()
et générer des conflits avec différents chemins locaux)Ce qui n'est pas évident, c'est que le paramètre par défaut dans RStudio est de créer des scripts dans "Project: (None)".
Donc, si vous n'avez configuré aucun projet auparavant, pour restaurer vos scripts manquants, vous devez retourner à "Project: (None)" qui contient tout le travail ouvert non affilié à un projet RStudio.
Pour ce faire, allez dans le coin supérieur droit de votre fenêtre RStudio et trouvez le petit menu déroulant à côté du projet Word. Cliquez sur le petit triangle pour obtenir le menu déroulant Projet et sélectionnez "Fermer le projet". Une fois le nouveau projet fermé, vos anciens onglets devraient réapparaître. Le menu déroulant devrait également indiquer maintenant: "Projet: (Aucun)" (encore une fois, cela suppose que vous n'aviez pas configuré de projet pour votre travail précédent).
J'ai rencontré une situation où RStudio n'a chargé aucun script, aucune des suggestions ci-dessus n'a aidé, cependant, je pouvais voir tous les fichiers sous C:\Users\[your user]\AppData\Local\RStudio-Desktop\sources
.
Ce qui m'a aidé, c'est de supprimer lock_file
et restart_file
. Après cela, lorsque j'ai démarré RStudio, tous les scripts ont été chargés.