Все вычисления, такие как получение средних значений, подсчет и т. Д., Должны выполняться (если возможно) с использованием механизма базы данных. Я не знаю о лежащей в основе проблеме, но использование pandas
на стороне сервера для получения средних значений определенно излишне. Вам нужно взглянуть на средство агрегации Джанго.
Кроме того, вам, вероятно, необходимо реструктурировать модель. Если вам нужно сохранить продолжительность телефонного разговора, вы можете использовать вместо него FloatField, например
class PhoneRecord(models.Model):
duration = models.FloatField(blank=True, default=0.0, help_text=_('duration in seconds'))
# other fields...
# also, you can set up the duration field with `editable=False`, and
# calculate its value each time the record is created
В этом случае вы можете использовать Avg
:
from django.db.models import Avg
PhoneRecords.objects.all().aggregate(Avg('duration'))
и получить что-то вроде этого
{'duration_avg': 12.3}
Вы можете использовать IUpdateSession3 :: QueryHistory Method .
Свойства возвращенных записей описаны в http://msdn.microsoft.com/en-us/library/aa386400 (VS.85) .aspx
Set updateSearch = CreateObject("Microsoft.Update.Session").CreateUpdateSearcher Set updateHistory = updateSearch.QueryHistory(1, updateSearch.GetTotalHistoryCount) For Each updateEntry in updateHistory Wscript.Echo "Title: " & updateEntry.Title Wscript.Echo "application ID: " & updateEntry.ClientApplicationID Wscript.Echo " --" Next
edit: также взгляните на http : //msdn.microsoft.com/en-us/library/aa387287%28VS.85%29.aspx
После дальнейшего поиска того, что я нашел ранее. (Да, то же самое, что VolkerK предлагает первым)
Используя следующий код, я могу получить список, из которого я могу извлечь номера КБ:
var updateSession = new UpdateSession();
var updateSearcher = updateSession.CreateUpdateSearcher();
var count = updateSearcher.GetTotalHistoryCount();
var history = updateSearcher.QueryHistory(0, count);
for (int i = 0; i < count; ++i)
Console.WriteLine(history[i].Title);