args = [a, b, d, c]
lens = [len(x) for x in args]
abc = np.concatenate(args)
C = np.cumsum(lens)
I = np.nonzero(np.in1d(abc, c))[0]
S = np.split(I, (2, 4, 5))
[S[0], S[1] - C[0], S[2] - C[1], S[3] - C[2]]
I
C
Самый эффективный способ реализации numpy.in1d ​​для нескольких массивов