Ответ 1
Большинство объектов sklearn работают с pandas
dataframes просто отлично, что-то вроде этой работы для вас?
import pandas as pd
import numpy as np
from sklearn.decomposition import PCA
df = pd.DataFrame(data=np.random.normal(0, 1, (20, 10)))
pca = PCA(n_components=5)
pca.fit(df)
Вы можете получить доступ к самим компонентам с помощью
pca.components_