fillts

Заполните отсутствующие значения во временных рядах

fillts будет удален в будущем релизе. Используйте timetable вместо этого. Для получения дополнительной информации смотрите, Преобразовывают Финансовые маневры Объектов Временных рядов в Расписания.

Синтаксис

newfts = fillts(oldfts,fill_method)
newfts = fillts(oldfts,fill_method,newdates)
newfts = fillts(oldfts,fill_method,newdates,{'T1','T2',...})
newfts = fillts(oldfts,fill_method,newdates,'SPAN',{'TS','TE'},delta)
newfts = fillts(... sortmode)

Аргументы

oldfts

Финансовый объект временных рядов.

fill_method

(Необязательно) отсутствующие значения Замен (NaN) в oldfts с помощью процесса интерполяции, константы, или нулевого порядка содержат.

Допустимые методы заполнения (методы интерполяции):

  • линейный - 'linear ' - 'l' (значение по умолчанию)

  • линейный с экстраполяцией- 'linearExtrap' - 'le'

  • cubic - 'cubic' - 'c'

  • кубический с экстраполяцией - 'cubicExtrap' - 'ce'

  • spline - 'spline' - 's'

  • шлицуйте с экстраполяцией - 'splineExtrap'-'se'

  • nearest - 'nearest' - 'n'

  • самый близкий с экстраполяцией - 'nearestExtrap'-'ne'

  • pchip - 'pchip' - 'p'

  • pchip с экстраполяцией - 'pchipExtrap'-'pe'

(См. interp1 для обсуждения экстраполяции.)

Чтобы заполнить с константой, введите ту константу.

Нулевой порядок содержит ('zero') заливки отсутствующее значение со значением, сразу предшествующим ему. Если первое значение во временных рядах отсутствует, это остается NaN.

newdates

(Необязательно) Вектор-столбец последовательных дат, вектора символов даты или массива ячейки столбца дат вектора символов. Если oldfts содержит информацию времени суток, newdates должен сопровождаться временным вектором (newtimes). В противном случае newdates принят, чтобы иметь времена '00:00'.

T1, T2, TS, TE

В первый раз, во второй раз, время начала, время окончания

delta

Временной интервал в минутах, чтобы охватить между временем начала и временем окончания

sortmode

(Необязательно) Значение по умолчанию = (неотсортированный) 0. 1 = отсортированный.

Описание

newfts = fillts(oldfts,fill_method) заменяет отсутствующие значения (представленный NaN) в финансовом объекте oldfts временных рядов с действительными значениями, с помощью или константы или процесса интерполяции, обозначенного fill_method.

newfts = fillts(oldfts,fill_method,newdates) заменяет все отсутствующие значения в заданные даты newdates, добавленный к финансовым временным рядам oldfts с новыми значениями. Значения могут быть одной константой или значениями, полученными посредством процесса интерполяции, определяемого fill_method. Если какая-либо из дат в newdates существует в oldfts, существующий имеет приоритет.

newfts = fillts(oldfts,fill_method, newdates,{'T1','T2',...}) дополнительно позволяет обозначение определенного времени суток для сложения или замены данных.

newfts = fillts(oldfts,fill_method,newdates,'SPAN',{'TS','TE'},delta) подобен предыдущему формату за исключением того, что вы определяете только время начала и время окончания. Вы следуете за этими временами с временным интервалом охвата, delta.

Если вы задаете только одну дату newdates, задавая запуск, и время окончания генерирует только времена для той определенной даты.

newfts = fillts(... sortmode) дополнительно обозначает, хотите ли вы порядок дат в выходном объекте остаться такими же как во входном объекте или быть отсортированными хронологически.

(Неотсортированный) sortmode = 0 добавляет любые новые даты в конец. Интерполяция и процессы нулевого порядка, которые вычисляют значения для новых дат, работают над отсортированным объектом. После завершения переупорядочиваются существующие даты, как они были первоначально, и новые даты добавлены в конец.

sortmode = 1 сортирует вывод. После интерполяции не происходит никакое переупорядочение последовательности даты.

Примеры

Пример 1. Создайте финансовый объект временных рядов с недостающими данными в четвертых и пятых строках.

dates = ['01-Jan-2001';'01-Jan-2001'; '02-Jan-2001';...
         '02-Jan-2001'; '03-Jan-2001';'03-Jan-2001'];
times = ['11:00';'12:00';'11:00';'12:00';'11:00';'12:00'];
dates_times = cellstr([dates, repmat(' ',size(dates,1),1),... 
                       times]);
OpenFts = fints(dates_times,[(1:3)'; nan; nan; 6],{'Data1'},1,... 
'Open Financial Time Series')

OpenFts выглядит так:

Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints (line 165) 
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/display (line 66) 

OpenFts = 
 
    desc:  Open Financial Time Series
    freq:  Daily (1)

    'dates:  (6)'    'times:  (6)'    'Data1:  (6)'
    '01-Jan-2001'    '11:00'          [          1]
    '     "     '    '12:00'          [          2]
    '02-Jan-2001'    '11:00'          [          3]
    '     "     '    '12:00'          [        NaN]
    '03-Jan-2001'    '11:00'          [        NaN]
    '     "     '    '12:00'          [          6]

Пример 2. Заполните недостающие данные в OpenFts с помощью кубичной интерполяции.

FilledFts = fillts(OpenFts,'cubic')
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/fillts (line 213) 
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/display (line 66) 

FilledFts = 
  
       desc:  Filled Open Financial Time Series
       freq:  Unknown (0)
 
       'dates:  (6)'    'times:  (6)'    'Data1:  (6)'
       '01-Jan-2001'    '11:00'          [          1]
       '     "     '    '12:00'          [          2]
       '02-Jan-2001'    '11:00'          [          3]
       '     "     '    '12:00'          [     3.0663]
       '03-Jan-2001'    '11:00'          [     5.8411]
       '     "     '    '12:00'          [     6.0000]

Пример 3. Заполните недостающие данные в OpenFts с постоянным значением.

FilledFts = fillts(OpenFts,0.3)
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/fillts (line 213) 
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/display (line 66) 

FilledFts = 
 
    desc:  Filled Open Financial Time Series
    freq:  Unknown (0)

    'dates:  (6)'    'times:  (6)'    'Data1:  (6)'
    '01-Jan-2001'    '11:00'          [          1]
    '     "     '    '12:00'          [          2]
    '02-Jan-2001'    '11:00'          [          3]
    '     "     '    '12:00'          [     0.3000]
    '03-Jan-2001'    '11:00'          [     0.3000]
    '     "     '    '12:00'          [          6]

Пример 4. Можно использовать fillts, чтобы идентифицировать определенное время в определенный день для замены недостающих данных. Этот пример показывает, как заменить недостающие данные в 12:00 2 января и 11:00 3 января.

FilltimeFts = fillts(OpenFts,'c',... 
{'02-Jan-2001';'03-Jan-2001'}, {'12:00';'11:00'},0)
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/fillts (line 213) 
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/display (line 66) 

FilltimeFts = 
  
       desc:  Filled Open Financial Time Series
       freq:  Unknown (0)
 
       'dates:  (6)'    'times:  (6)'    'Data1:  (6)'
       '01-Jan-2001'    '11:00'          [          1]
       '     "     '    '12:00'          [          2]
       '02-Jan-2001'    '11:00'          [          3]
       '     "     '    '12:00'          [     3.0663]
       '03-Jan-2001'    '11:00'          [     5.8411]
       '     "     '    '12:00'          [     6.0000]

Пример 5. Используйте временной интервал охвата, чтобы добавить дополнительный день в OpenFts.

SpanFts = fillts(OpenFts,'c','04-Jan-2001','span',... 
               {'11:00';'12:00'},60,0)
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/fillts (line 213) 
Warning: FINTS will be removed in a future release. Use TIMETABLE instead. 
> In fints/display (line 66) 

SpanFts = 
  
       desc:  Filled Open Financial Time Series
       freq:  Unknown (0)
 
       'dates:  (8)'    'times:  (8)'    'Data1:  (8)'
       '01-Jan-2001'    '11:00'          [          1]
       '     "     '    '12:00'          [          2]
       '02-Jan-2001'    '11:00'          [          3]
       '     "     '    '12:00'          [     3.0663]
       '03-Jan-2001'    '11:00'          [     5.8411]
       '     "     '    '12:00'          [     6.0000]
       '04-Jan-2001'    '11:00'          [     9.8404]
       '     "     '    '12:00'          [     9.9994]

Представлено до R2006a