我有一个拥有107635行和三列的大文件,分别是主题、感兴趣区域(ROIs)和试验编号。ROIs可以是A、B、C、D、E、F。
我想要的是只保留那些在ROI列中有连续的B、C、D序列的试验,而且是第一次出现B时。不管B、C和D出现多少次都没关系。
在下面的示例中,我可以保留ntrial 78和201,因为第一次出现B后面跟着C和D。
但是,我需要删除ntrial 10和400。在试验10中,B、C和D不是连续的。在试验400中,第一次出现B时,B后面没有跟着C和D。
对于输出,我只需要一列,每行表示要保留的试验值为1,要删除的试验对应的行值为0。
有没有建议可以创建一个可以自动化该过程的代码,而不必检查每个试验?
非常感谢!
我想要的是只保留那些在ROI列中有连续的B、C、D序列的试验,而且是第一次出现B时。不管B、C和D出现多少次都没关系。
在下面的示例中,我可以保留ntrial 78和201,因为第一次出现B后面跟着C和D。
但是,我需要删除ntrial 10和400。在试验10中,B、C和D不是连续的。在试验400中,第一次出现B时,B后面没有跟着C和D。
对于输出,我只需要一列,每行表示要保留的试验值为1,要删除的试验对应的行值为0。
有没有建议可以创建一个可以自动化该过程的代码,而不必检查每个试验?
非常感谢!
subject ROI ntrial output
sbj05 A 78 1
sbj05 A 78 1
sbj05 A 78 1
sbj05 A 78 1
sbj05 A 78 1
sbj05 A 78 1
sbj05 B 78 1
sbj05 B 78 1
sbj05 C 78 1
sbj05 D 78 1
sbj05 E 78 1
sbj05 E 78 1
sbj05 E 78 1
sbj05 A 201 1
sbj05 A 201 1
sbj05 A 201 1
sbj05 A 201 1
sbj05 A 201 1
sbj05 B 201 1
sbj05 C 201 1
sbj05 D 201 1
sbj05 E 201 1
sbj05 E 201 1
sbj05 E 201 1
sbj05 F 201 1
sbj05 F 201 1
sbj05 A 10 0
sbj05 A 10 0
sbj05 A 10 0
sbj05 A 10 0
sbj05 B 10 0
sbj05 A 10 0
sbj05 C 10 0
sbj05 D 10 0
sbj05 E 10 0
sbj05 E 10 0
sbj05 A 400 0
sbj05 A 400 0
sbj05 A 400 0
sbj05 B 400 0
sbj05 A 400 0
sbj05 B 400 0
sbj05 C 400 0
sbj05 C 400 0
sbj05 C 400 0
sbj05 D 400 0
sbj05 E 400 0
sbj05 E 400 0
sbj05 D 400 0
BCD
出现在第一次出现B
之后的情况。 - akrun