2017-12-20 22 views
0

기계 학습을위한 기능 데이터 세트를 생성하고 있으며, 2 차원 배열 배열 X가 있습니다. 여기서 X.shape = (n, d) - n 샘플, d 피쳐입니다.수평 스택 2 차원 Numpy 배열과 3 차원 Numpy 배열

이제는 f (1, k) - n 개의 샘플, k 개의 레이블이있는 단일 핫 인코딩 - f를 사용하여 새 기능을 생성합니다.

기존 기능 데이터 세트에이 새로운 기능을 추가하는 가장 좋은 방법은 무엇입니까?

+2

어떤 기능 데이터 세트의 최종 형태가 될 것인가? – Divakar

+0

필자는 sklearn의 라이브러리를 사용하고 있는데, 기존의 featureset에 핫 라벨 기능을 구현하는 표준 방법은 무엇입니까? –

+0

나는 k 개의 새로운 기능처럼 취급 할 것입니다. np.c_ [X, f.reshape (n, k)]'. –

답변

1

원 핫 벡터의 두 번째 차원은 중복되므로 모양을 삭제하고 f를 (n, k) 모양의 2D 배열로 사용할 수 있습니다. . 당신은 같은 것을 할 것
다음 squeeze() 기능을 사용하면 배열에서 모두 1 차원을 제거

new_data = np.concatenate((X, f.squeeze()), axis=1) 

(즉 f.squeeze().shape == (n, k)

건배를