我是一个试图将SAS代码转换为python版本的SAS用户。在
我已经创建了下面的SAS代码,并有一些问题要应用到python语言。假设我有一个数据表,其中包含aging1到aging60的字段,我想创建两个新字段,分别命名为“life”和“obs”time。这两个字段的值为0,将根据其他字段的条件进行更改,这些字段的值为aging1到aging60。在data want;
set have;
array aging_array(*) aging1--aging60;
life_def=0;
obs_time=0;
do i to 60;
if life_def=0 and aging_array[i] ne . then do;
if aging_array[i]>=4 then do;
obs_time=i;
life_def=1;
end;
if aging_array[i]<4 then do;
obs_time=i;
end;
end;
end;
drop i;
run;
我曾尝试将上面的SAS代码重新创建为python版本,但我认为它不起作用。下面是我目前正在处理的代码。在
^{pr2}$
假设df[数据框列[i+4]]是我在SAS中的老化专栏。通过使用上面的代码,当i增加时循环继续。但是,SAS提供的逻辑是在第一次老化时停止i>;=4。在
例如,如果aging7>;=4(首次),则life_def将为1,obs_time将为7,并分配下一个循环,即8。在
谢谢你!在