Я просматриваю dataframe в R, используя View
:
my_df <- data.frame(a=1:10, b=letters[1:10])
View(my_df)
Я хотел бы закрыть окно, полученное в результате, программным способом (вместо нажатия кнопки X).
Как я могу это сделать? graphics.off
не работает, поскольку это не графическое устройство. Глядя на код View
, внутренняя функция dataviewer
используется для отображения окна, но я не уверен, что он использует в фоновом режиме (tcltk?), Поэтому не уверен, как закрыть окно.
Подумайте о том, почему я хочу этого.
В основном я делаю шаг проверки пользователя в script, в котором пользователю задают вопрос о том, смещен ли фрагмент кадра данных и соответствующее изображение. Это происходит примерно так:
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 not OK)
4. close the image window (graphics.off()), close the View(..) window.
}
В основном я хотел уменьшить взаимодействие с пользователем, глядя на фрагмент изображения и фреймворка данных и набрав Y или N, поэтому им не нужно вручную закрывать окно данных для каждого i
в цикле.
(Я частично прошел эту проверку и имею дело с 200 View(snippet)
окнами, которые я не потрудился закрыть D:. Также заметили, что открытие окон крадет клавиатурный фокус вдали от подскажите, чтобы я набирал Y/N не так быстро, как хотелось бы, но мне нужно сделать это только один раз, так что теперь это будет сделано. Мне любопытно ответить на вопрос, хотя в следующий раз).