首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在SPSS或excel中根据计数器批量复制行

如何在SPSS或excel中根据计数器批量复制行
EN

Stack Overflow用户
提问于 2012-08-11 07:45:41
回答 1查看 1.8K关注 0票数 0

我的问题是:

我有一个数据库,里面有一长串病人的X光片和相关信息,按病人身份排序。我想要做的是为每个病人找到第一次X光检查的时间,我想为这些病人的每一次X光检查填写这个数据库。问题是每个病人通常都有多次X光片,我不知道如何将数据从另一列复制到我的timeOfFirstXray列中。

例如,(对不起,我的格式很差)

.....dateandtimeof1stXRAY ptid ...dateandtimeofxray

4 .21/1/2011 4:30 21/1/2011 4:30

4 .22/2/2011 5:11 21/1/2011 4:30

4 .25/5/2011:00.21/1/2011 4:30

5 .29/7/2000 3:0029/7/2000 3:00

5 .30/7/2000 4:00 .29/7/2000 3:00

5 .2000年7月31日5:00 .29/7/2000 3:00

5 .1/8/2000 1:0029/7/2000 3:00

6 .1/9/2002 2:001/9/2002 2:00

8 .2008年10月3日3:23 .3/10/2008 3:23

8 .4/10/2008 5:00 .3/10/2008 3:23

8 .2008年10月5日上午9时.3/10/2008 3:23

我的密码是:

将计数器设置为0,将日期变量初始化为第一行的日期值,如果计数器< patientID,counter++直到等于id,则将日期变量设置为该行中日期的值,并将该行的值设置为timeOfFirstXray。否则,如果计数器== patientID,则将现有日期变量中的值复制到该行的timeOfFirstXray中。

我以前从来没有用过SPSS或excel来处理这类东西,所以基本上我要找的是上面的翻译。

谢谢你的阅读!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-11 19:23:15

这里有一个Excel选项。假设您的数据从第2行开始,请在C2中输入此公式并向下复制。注意,这是一个数组公式,必须用Ctrl Enter输入。(如果正确的话,您将看到公式周围的花括号。)然后尽可能地抄写:

代码语言:javascript
复制
=MIN(IF(($A$2:$A$12=A2)*($B$2:$B$12),$B$2:$B$12))

调整您的范围以适合您的数据。请注意,即使它们在源数据中没有按时间顺序排列,它也会得到最早的日期。

如果您对公式背后的逻辑感兴趣,请参阅我博客上的这个职位

如果您只想显示最小值,可以使用Excel中的pivot表(Excel 2010 )完成类似于Andy上面的注释的操作。关键是“将值显示为”Min:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11912987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档