2016-10-24 2 views
0

Я пытаюсь создать среднее из двух столбцов, которое сохраняется с помощью csv writer. У меня есть время ответа и правильный ответ.Создание среднего столбцов с помощью csv writer

Код:

stimTime = time.time() 
if thisKey in ['a']: 
    pmResponse = time.time() 
    pmTime = pmResponse - stimTime 
    print pmTime 
    if sampled_word == sampled_word.upper(): 
     pmCue = "correct" 
    else: 
     print "incorrect" 
    prospective_response = (pmTime, pmCue) 
    with open (info['participant']+"pm", 'ab') as csvfile: 
     wr = csv.writer(csvfile, delimiter=',') 
     wr.writerow(prospective_response) 

в текстовый файл данных таким образом выходит, как:

0.5339999198913574,correct 
1.0839998722076416,correct 
1.234234, incorrect 

Так что я пытаюсь работать, как, как создать среднее из двух столбцов, а также это написано в конце файла csv. Я понимаю, что мне придется изменить правильность и неверность в числовую форму.

Любая помощь приветствуется!

+0

Сумма времен и кии, как вы идете, добавить счетчик подсчитать, сколько строки, которые вы пишете, и в конце выпишите сумму/счетчик, чтобы получить среднее среднее значение. – user3468054

ответ

0

Почему вы не добавить в этот код:

totalResponse += pmTime 
rowCounter += 1 
if sampled_word == sampled_word.upper(): 
    pmCue = "correct" 
    correct += 1 
else: 
    print "incorrect" 

и в конце всего:

with open (info['participant']+"pm", 'ab') as csvfile: 
    wr = csv.writer(csvfile, delimiter=',') 
    wr.writerow(correct/float(rowCounter),totalResponse/rowCounter) 
+0

Большое спасибо kabanus! –

+0

Прочтите тур и примите ответ, который могут видеть будущие читатели. – kabanus

Смежные вопросы