-1
我有如下一个数据帧返回列:为“1”的行中第一次出现
当在列“关口”,我需要扫描的列,可乐,COLB,COLC,cola1变化,第一次出现“1”的colb1,colc1。
然后,条件可乐== cola1 == 1或COLB == colb1 == 1或COLC == colc1 == 1应满足,并在新列返回列名 “New_col”
输入:
cola colb colc cola1 colb1 colc1 col
0 0 0 0 0 0 18
1 0 0 1 1 0 18
1 0 0 1 1 0 18
1 0 0 1 1 0 18
1 0 0 1 1 0 18
0 0 0 0 0 0 24
0 1 0 0 1 0 24
0 1 0 0 1 0 24
0 1 0 0 1 0 24
0 1 0 0 1 0 24
0 0 0 0 1 0 10
预期输出:
cola colb colc cola1 colb1 colc1 col New_col
0 0 0 0 0 0 18
1 0 0 1 1 0 18
1 0 0 1 1 0 18
1 0 0 1 1 0 18
1 0 0 1 1 0 18
0 0 0 0 0 0 24 cola
0 1 0 0 1 0 24
0 1 0 0 1 0 24
0 1 0 0 1 0 24
0 1 0 0 1 0 24
0 0 0 0 1 0 10 colb
如果所有3条件都满足会怎么样。你想要什么输出?有没有优先权? –
我不明白为什么输出在其行中。因为它似乎是以前组的第一次出现。你能解释更多吗? – jezrael
在第5行中,“col”列的值从0变为1.因此,我需要扫描该行上方的所有其他列,以获得第一次出现的“1”。 并且要返回的输出应该满足: 只有当可乐和cola1 = 1或colb和colb1 = 1或colc和colc1 = 1时。 – Anagha