¿Cómo hacer una tubería para múltiples columnas de marco de datos?

Tengo Dataframe que se puede simplificar a esto:

import pandas as pd

df = pd.DataFrame([{
'title': 'batman',
'text': 'man bat man bat', 
'url': 'batman.com', 
'label':1}, 
{'title': 'spiderman',
'text': 'spiderman man spider', 
'url': 'spiderman.com', 
'label':1},
{'title': 'doctor evil',
 'text': 'a super evil doctor', 
'url': 'evilempyre.com', 
'label':0},])

Y quiero probar diferentes métodos de extracción de características: TFIDF, word2vec, Coutvectorizer con diferentes configuraciones de ngram, etc. Pero quiero probarlo en diferentes combinaciones: un conjunto de características contendrá datos de 'texto' transformados con TFIDF y 'url' con Countvectoriser y el segundo tendrán datos de texto convertidos por w2v, y 'url' por TFIDF y así sucesivamente. Al final, por supuesto, quiero hacer una comparación de diferentes estrategias de preprocesamiento y elegir la mejor.

Y aquí están las preguntas:

¿Hay alguna manera de hacer esas cosas usando herramientas estándar de sklearn como Pipeline?

¿Hay un sentido común en mi idea? ¿Quizás haya buenas ideas sobre cómo tratar los datos de texto con muchas columnas en Dataframes que me faltan?

¡Muchas gracias!

Respuestas a la pregunta(3)

Su respuesta a la pregunta