Как прочитать входной файл в pySimpleGUI, а затем передать его на процессор обработки чисел

Функция base reshape работает отлично:

df <- data.frame(
  year   = c(rep(2000, 12), rep(2001, 12)),
  month  = rep(1:12, 2),
  values = rnorm(24)
)
df_wide <- reshape(df, idvar="year", timevar="month", v.names="values", direction="wide", sep="_")
df_wide

Здесь idvar - столбец классов, который разделяет строки, timevar - столбец классов, который должен быть широко представлен, v.names - это столбец, содержащий числовые значения, direction указывает широкий или длинный формат, а необязательный аргумент sep - это разделитель, используемый между именами классов timevar и v.names на выходе data.frame. Если нет idvar, создайте его перед использованием функции reshape():

df$id   <- c(rep("year1", 12), rep("year2", 12))
df_wide <- reshape(df, idvar="id", timevar="month", v.names="values", direction="wide", sep="_")
df_wide

Просто помните, что требуется idvar! Часть timevar и v.names проста. Выход этой функции более предсказуем, чем некоторые другие, поскольку все явно определено.

2
задан Ismail Ahmed 22 March 2019 в 23:28
поделиться

2 ответа

Я полагаю, вам не хватает «цикла событий».

Попробуйте что-то вроде этого, надеюсь, это поможет.

import sys  
if sys.version_info[0] >= 3:  
    import PySimpleGUI as sg  
else:  
    import PySimpleGUI27 as sg  

layout = [[sg.Text('Your typed chars appear here:'), sg.Text('', key='_OUTPUT_') ],  
          [sg.Input(do_not_clear=True, key='_IN_')],  
          [sg.Button('Show'), sg.Button('Exit')]]  

window = sg.Window('Window Title').Layout(layout)  

while True:                 # Event Loop  
  event, values = window.Read()  
  print(event, values)
  if event is None or event == 'Exit':  
      break  
  if event == 'Show':  
      # change the "output" element to be the value of "input" element  
      window.FindElement('_OUTPUT_').Update(values['_IN_'])

window.Close()
0
ответ дан Alg_D 22 March 2019 в 23:28
поделиться

Вы делаете 2 звонка для чтения.

Попробуйте изменить на это:

yeet = sg.Window('Dankify ALL THE THINGS!').Layout(
    [[sg.Text('Filename')], [sg.Input(), sg.FileBrowse()], [sg.OK(), sg.Cancel()]])

event, values = yeet.Read()

Без Read в конце первого утверждения.

Вы создаете экземпляр этого класса, верно?

d = Dankify()
0
ответ дан MikeyB 22 March 2019 в 23:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: