Преобразовать десятичное время в минуты в SAS - PullRequest
0 голосов
/ 24 мая 2019

У меня проблемы с преобразованием десятичной переменной 9,3 в минуты.Переменная отображается в виде доли часа, и мне нужно, чтобы она отображалась в минутах.

Ниже приведен пример того, что необходимо преобразовать.

DECSNTIME
0.039
1.279
6.801

Ответы [ 2 ]

2 голосов
/ 24 мая 2019

Преобразование десятичных часов в секунды и форматирование значения для отображения времени.

data have;
  input decsntime @@;
  cards;
0.039 1.279 6.801
run;

data want;
  set have;
  minutes = decsntime * 60; * plain minutes might be enough, depends on analysis;
  time = decsntime * 3600; * sas time value;
  format time time5.;
run;

proc report data=want;
  columns decsntime minutes time time=timehms time=timehmsd;
  define decsntime / 'Time/(hours)' display;
  define time / 'Time/(H:M)';
  define timehms / format=time8. 'Time/(H:M:S)';
  define timehmsd / format=time11.2 'Time/(H:M:S.D)';
run;

enter image description here

0 голосов
/ 24 мая 2019

Как уже упоминалось в комментарии @Richard, вы ищете что-то простое, как следующее? Если нет, то отредактируйте свой вопрос, чтобы дать больше объяснений и примеров данных до и после преобразования с часов на минуты.

data have;
   input hours;
   datalines;
9.3
0.039
1.279
6.801
1
1.5
2
;

data want;
   set have;
   minutes = hours * 60;
run;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...