NSDate обнуляет секунды без округления

Я хотел бы знать, может ли кто-нибудь помочь мне с моим методом . У меня есть следующий метод, который обнуляет значение секунд объекта NSDate:

- (NSDate *)dateWithZeroSeconds:(NSDate *)date {
    NSTimeInterval time = round([date timeIntervalSinceReferenceDate] / 60.0) * 60.0;
    return  [NSDate dateWithTimeIntervalSinceReferenceDate:time];
}

Проблема в том, что когда передается дата, например:

2011-03-16 18:21:43 +0000

, она возвращает:

2011-03-16 18:22:00 +0000

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

Любая помощь приветствуется. поскольку они являются семантическими векторами, представляющими значение этой строки. Мне нужно сохранить эту пару.

  • Векторы для каждого слова в списке строятся один за другим и сохраняются на диск перед переходом к следующему слову.

  • Они должны быть сохранены на диске способом, который затем можно было бы получить с помощью словарного синтаксиса. Например, если все слова хранятся в файле, подобном DB, мне нужно иметь возможность открыть этот файл и сделать что-то вроде vector = wordDB [word] .

  • ТЕКУЩИЙ ПОДХОД

    Что В настоящее время я делаю:

    • Использование полки для открытия полки с именем wordDB

    • Каждый раз, когда вектор (в настоящее время используется lil_matrix из scipy.sparse ) для слова строится, сохраняя вектор на полке: wordDB [word] = vector

    • Когда мне нужно использовать векторы во время оценки, я делаю обратное: открываю полку, а затем вызываю векторы, выполняя vector = wordDB [word] для каждого слова, поскольку они необходимы, так что не все векторы нужно хранить в ОЗУ (что было бы невозможно).

    Вышеупомянутое «решение» соответствует моим потребностям с точки зрения решения проблемы, как указано. Проблема просто в том, что когда я хочу использовать этот метод для построения и сохранения векторов для большого количества слов, мне просто не хватает места на диске.

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

    ПРОБЛЕМА

    Таким образом, возникает вопрос: существует ли способ сериализации моего набора массивов, который будет:

    1. Сохранять сами массивы в сжатом двоичном формате, подобном файлам .npy , созданным с помощью scipy.save ?

    2. Удовлетворять моему требованию, чтобы данные были доступны для чтения с диска в виде словаря, сохраняя связь между словами и массивами?

    7
    задан ROMANIA_engineer 14 October 2017 в 07:59
    поделиться