knn 알고리즘 영화 분류 실현

6456 단어 데이터 분석
KNN 영 어 는 K - nearst neighbor 라 고 부 르 고 중국어 이름 은 K 근린 알고리즘 입 니 다. Cover 와 Hart 가 1968 년 에 제기 한 KNN 알고리즘 원리 입 니 다.
  • 이미 알 고 있 는 분류 데이터 집중 점 과 현재 점 간 의 거 리 를 계산한다.
  • 거리 증가 순서에 따라 정렬 한다.
  • 현재 거리 와 가장 작은 k 개 점 을 선택 하 십시오.
  • 앞의 k 개 점 이 있 는 유형의 출현 확률 을 확인한다
  • 돌아 가기 전 k 개 점 에서 빈도 가 가장 높 은 유형 을 현재 점 의 예측 점 으로 한다
  • #-*-coding:utf-8-*-
    import numpy  as  np
    import pandas  as pd
    def distance(v1,v2):
        dist=np.sqrt(np.sum(np.power((v1-v2),2)))
        return dist
    #    
    data=pd.read_excel('./      .xlsx')
    #     
    train=data.iloc[:,:6]
    print('train',train)
    #             
    train_x=train.iloc[:,:-1]
    train_y=train.iloc[:,-1]
    #     
    test=data.columns[-4:]
    print('test',test)
    #      
    #                
    for i in range(train.shape[0]):
        #    
        dist=distance(train_x.iloc[i,2:5],test[1:])
        train.loc[1,'dist']=dist
    #         
    train.sort_values(by='dist',inplace=True)
    #  K ,k       
    k=1
    res=train.loc[:,'    '][:k].mode()[0]
    print(res)
    

    좋은 웹페이지 즐겨찾기