关于excel:确定发生特定模式更改的行

Identify rows where a specific pattern change occurs

简介/背景

我需要分析spss数据表中的响应者数据,但是对于我将要描述的特定分析,我认为最好将这些数据复制到excel或google工作表中。

已要求

600名参与者回答100个问题。参与者将在数据中各占一行,并且他们对问题的回答将在其各自行中从左到右的100列中。每个响应将被编码为1或2(这是一个二进制响应,每个列/单元格中仅提供这两个选项之一)。

数据中应有一个趋势(从左到右),所有参与者将从该点开始从严格响应1变为严格响应2的一个点(即列/单元格)。如果参与者注意并遵循逻辑,那么他们将仅对其余回答回答2。

分析

我需要确定在切换到首先提供2个响应而不是严格地1个响应之后没有严格继续回答2个响应的所有参与者。

即如果有人回答1,1,1,1,1,1,然后切换到2,2,2,2,2,但切换回1,而不是继续回答其余问题的2,我需要确定这些离群值,以便可以将它们与其余数据集隔离。

是否有人知道某个功能(在excel,google表格或您选择的平台中),该功能可以让我批量确定哪些参与者在将其响应更改为2后错误地输入了1。

我希望所有这些都有意义,如果这有点儿混乱,请抱歉。


您可以为每行做一个TEXTJOIN()并查找模式" 21"(即在" 2"之后的" 1")。如果找到,则为大纲轮廓。

类似于以下内容:

1
=IF(ISERROR(FIND("21",TEXTJOIN("",TRUE,[data range of a row]))),FALSE,TRUE)

TRUE将是轮廓显示器


这可以在SPSS中轻松完成,无需将数据复制到其他平台。
(尽管我喜欢@OliverLeung的简洁Excel衬板!)

以下代码将遍历变量,并寻找在值2之后出现的值1。在这种情况下,变量oops将获得值1:

1
2
3
4
5
compute pvr=0.
do repeat vr=var1 to var40.
if vr=1 and pvr=2 oops=1.
compute pvr=vr.
end repeat.