Тестирование скорости Python - Разница во времени - миллисекунды

Наивный байесовский классификатор является контролируемым методом обучения и требует от вас его обучения с использованием помеченных данных, в которых вы заранее знаете цели. Затем вы можете использовать его на немаркированных данных для прогнозирования будущих значений, но вы не можете обучить его на данных без целевых значений.

Трудно рекомендовать другой метод, не зная больше о вашей задаче, но похоже, что вы хотите изучить алгоритмы кластеризации без контроля. k-means - относительно простой для начала.

122
задан BuddyJoe 19 April 2009 в 23:08
поделиться

8 ответов

datetime.timedelta - это просто разница между двумя datetime ... так что это как период времени, в днях / секундах / микросекундах

>>> import datetime
>>> a = datetime.datetime.now()
>>> b = datetime.datetime.now()
>>> c = b - a

>>> c
datetime.timedelta(0, 4, 316543)
>>> c.days
0
>>> c.seconds
4
>>> c.microseconds
316543

Имейте в виду, что c.microseconds возвращает только часть микросекунд временной дельты! В целях синхронизации всегда используйте c.total_seconds () .

Вы можете выполнять всевозможные математические операции с datetime.timedelta, например:

>>> c / 10
datetime.timedelta(0, 0, 431654)

Возможно, было бы более полезно взглянуть на процессорное время вместо wallclock хотя время ... это зависит от операционной системы, хотя ... в Unix-подобных системах проверьте команду time.

177
ответ дан 24 November 2019 в 01:21
поделиться

Возможно, вы захотите используйте вместо этого модуль timeit .

36
ответ дан 24 November 2019 в 01:21
поделиться

Вы также можете использовать:

import time

start = time.clock()
do_something()
end = time.clock()
print "%.2gs" % (end-start)

Или использовать профилировщики python .

19
ответ дан 24 November 2019 в 01:21
поделиться

Следующий код должен отображать время детла ...

from datetime import datetime

tstart = datetime.now()

# code to speed test

tend = datetime.now()
print tend - tstart
3
ответ дан 24 November 2019 в 01:21
поделиться

Вы можете просто напечатать разницу:

print tend - tstart
4
ответ дан 24 November 2019 в 01:21
поделиться

Я не программист на Python, но Я знаю, как использовать Google , и вот что я нашел: вы используете оператор "-". Чтобы завершить код:

from datetime import datetime

tstart = datetime.now()

# code to speed test

tend = datetime.now()
print tend - tstart

Кроме того, похоже, что вы можете использовать функцию strftime () для форматирования вычисления временного интервала, чтобы сделать время тем не менее счастливым.

2
ответ дан 24 November 2019 в 01:21
поделиться

time.time () / datetime подходит для быстрого использования, но не всегда на 100% точен. По этой причине мне нравится использовать один из профилировщиков std lib (особенно горячо), чтобы выяснить, что к чему.

2
ответ дан 24 November 2019 в 01:21
поделиться

Вы можете заглянуть в модули профиля . Вы получите лучшее представление о том, где ваши замедления, и большая часть вашей работы будет полностью автоматизирована.

2
ответ дан 24 November 2019 в 01:21
поделиться
Другие вопросы по тегам:

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