Interseção de duas ou mais colunas DataFrame

Estou tentando encontrar a interseção de três quadros de dados, no entanto, opd.intersect1d não gosta de usar três quadros de dado

import numpy as np
import pandas as pd
df1 = pd.DataFrame(np.random.randint(0,10,size=(10, 4)), columns=list('ABCD'))
df2 = pd.DataFrame(np.random.randint(0,10,size=(10, 4)), columns=list('BCDE'))
df3 = pd.DataFrame(np.random.randint(0,10,size=(10, 4)), columns=list('CDEF'))

inclusive_list = np.intersect1d(df1.columns, df2.columns, df3.columns)

Erro

ValueError: The truth value of a Index is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

Oinclusive_list deve incluir apenas os nomes das colunas C e D. Qualquer ajuda seria apreciada. Obrigado

questionAnswers(3)

yourAnswerToTheQuestion