2015-01-13 6 views
0

다음 Python 코드를 사용하여 20 개의 입력 및 1 개의 범주 출력을 갖는 데이터 세트에 의사 결정 트리를 추가했습니다 (wordsDatum은 0 ~ 19 열의 입력을 포함하는 배열이며 나는 기능 importances를 인쇄 할 때 열의 출력은 20feature_importances_의 수가 Scikit learn의 DecisionTreeClassifier의 기능 중 일부와 일치하지 않습니다

clsfr=tree.DecisionTreeClassifier(max_depth=2,min_samples_leaf=50) 
clsfr=clsfr.fit(wordsDatum[:,0:19],wordsDatum[:,20]) 
for items in clsfr.feature_importances_: 
    print items 

, 나는 단지 19의 값을 얻을 -.?이 내가 20 개 기능이 고려 이상하다 어떤 아이디어를 여기에 갈 수있는 무엇에 대한

감사를 당신의 도움!

답변

1

이것은 목록이 파이썬에서 정의되는 방법 때문입니다. 이 here에 대한 좋은 통찰력을 찾을 수 있습니다. 이 같은 목록을 정의하면

그러나 요약

:

my_list = [0, 1, 2, 3, 4, 5] 

을하고 my_list[0:5] 전화, 그것은 당신에게 줄 것이다 : 그래서

[0, 1, 2, 3, 4] 

를하면 코드의 두 번째 줄을 변경하는 경우 로 :

clsfr=clsfr.fit(wordsDatum[:,0:20],wordsDatum[:,20])

그것을 w 아프다. 처음 20 개의 기능이 포함됩니다.

0

답장을 보내 주셔서 감사합니다. 예, 파이썬은 범위의 상한을 제외하고 하한을 포함하는이 버크 (?)를 가진 것으로 보입니다

관련 문제