Schließen Sie programmgesteuert das mit `View (x)` erstellte Fenster

Ich zeige einen Datenrahmen in R mitView:

my_df <- data.frame(a=1:10, b=letters[1:10])
View(my_df)

Ich möchte das resultierende Fenster jetzt programmgesteuert schließen (anstatt auf die Schaltfläche X zu klicken).

Wie kann ich das machen?graphics.off funktioniert nicht, da es kein Grafikgerät ist. Mit Blick auf dieView Code, interne Funktiondataviewer wird verwendet, um das Fenster anzuzeigen, aber ich bin nicht sicher, was es im Hintergrund verwendet (tcltk?), also bin ich nicht sicher, wie ich das Fenster schließen soll.

Wieder einige Kommentare, warum ich das will.

Im Grunde mache ich einen Benutzerprüfungsschritt in einem Skript, bei dem der Benutzer gefragt wird, ob ein Ausschnitt eines Datenrahmens und ein entsprechendes Bild zusammenpassen. Es geht ungefähr so:

for (i in 1:heaps) {

    1. View(a snippet of a big dataframe)
    2. show an image

    3. readline('Is this OK? [Y/N]: ') (store the i for which it's not OK)

    4. close the image window (graphics.off()), close the View(..) window.
}

Grundsätzlich wollte ich die Benutzerinteraktion reduzieren, indem ich das Bild- und Datenframe-Snippet anstarrte und J oder N eingab, damit sie das Datenframe-Fenster nicht für jedes manuell schließen müsseni in der Schleife.

(Ich bin selbst auf halbem Weg durch diese Validierung und habe es mit 200 zu tunView(snippet) Fenster, die ich nicht geschlossen habe D :. Außerdem ist mir aufgefallen, dass das Öffnen der Fenster den Tastaturfokus von der Eingabeaufforderung weg stiehlt, sodass ich J / N nicht so schnell tippe, wie ich es gerne hätte. Aber ich muss das nur einmal machen, so wird es vorerst gehen. Ich bin gespannt auf die Antwort auf die Frage (für das nächste Mal).

Antworten auf die Frage(2)

Ihre Antwort auf die Frage