본문 바로가기

분류 전체보기170

[파이썬] 영화 추천 시스템 실습: Item-based Collaborative Filtering, pivot_table, corrwith 추천시스템은 영화나 노래등을 추천하는데 사용되며, 주로 관심사나 이용 내역을 기반으로 추천한다. movie_titles_df= movies_rating_df= 실습 1. 두개의 데이터프레임을 합치시오. in: movie = pd.merge(movies_rating_df,movie_titles_df, on = 'item_id') out: 실습 2. timestamp 컬럼은 필요없으니, movies_rating_df 에서 아예 제거하시오. in: movie.drop('timestamp',axis=1,inplace=True) movie out: 실습 3. 각 영화별 별점의 평균을 구하고, 이를 ratings_df_mean 에 저장하시오. 또, 각 영화별로 몇개의 데이터가 있는지 구하고, 이를 ratings_d.. 2022. 5. 12.
[머신러닝] 연도별 시카고 범죄율 예측 실습: to_datetime, dt, Prophet kaggle에서 제공하는 시카고 범죄 데이터를 분석해보자. Datasource: 캐글 https://www.kaggle.com/currie32/crimes-in-chicago 다운로드한 csv파일을 변수로 저장한다. chicago_df_1 = pd.read_csv('Chicago_Crimes_2005_to_2007.csv',error_bad_lines=False,index_col = 0) chicago_df_2 = pd.read_csv('Chicago_Crimes_2008_to_2011.csv',error_bad_lines=False,index_col = 0) chicago_df_3 = pd.read_csv('Chicago_Crimes_2012_to_2017.csv',error_bad_lines=Fals.. 2022. 5. 11.
[머신러닝] 아보카도 가격 예측 실습: Prophet, EDA(Exploratory Data Analysis), make_future_dataframe 미국의 아보카도 리테일 데이터를 통해 아보카도의 가격을 예측해보자. 실습 1. Prophet 사용하기 전, 임포트하세요. from fbprophet import Prophet # 에러 발생시 프롬프트에 실행 : conda install -c conda-forge fbprophet df= EDA(Exploratory Data Analysis) : 탐색적 데이터 분석 시작 실습 2. 데이터를 날짜순으로 정렬하세요. in: df.sort_values('Date', inplace= True) df.head() out: 실습 3 날짜별로 가격이 어떻게 변하는지 plot을 이용해서 차트로 나타내세요. in: df_date = df.groupby('Date')['AveragePrice'].mean() df_date... 2022. 5. 10.
[머신러닝] Scaler의 inverse_transform, RandomForest 자동차 소비자들의 데이터를 토대로 자동차 구매 가격을 예측하는 인공지능을 만들어보자 df= # 이 중에서 성별부터 자본까지만 데이터로 활용하자. 전처리과정: df.isna().sum() # NaN없음 X = df.iloc[:,3:-1] y = df['Car Purchase Amount'] from sklearn.preprocessing import MinMaxScaler scaler_X = MinMaxScaler() scaler_y = MinMaxScaler() X = scaler_X.fit_transform(X) y = y.values.reshape (500,1) # y데이터 스케일링 y = scaler_y.fit_transform(y) 리니어 리그레션으로 모델링하고 학습한 후 평가진행: in: fro.. 2022. 5. 10.
[머신러닝] 스팸 분류 실습: CountVectorizer, Data Cleaning, Pipelining, NaiveBayes, Wordcloud 제시되는 데이터에는 약 5,728개의 이메일 메시지가 있으며, 스팸인지 아닌지의 정보를 가지고 있다. spam 컬럼의 값이 1이면 스팸이고, 0이면 스팸이 아니다. 스팸인지 아닌지 분류하는 인공지능을 만들자 (Supervised learning의 분류 문제) # colab으로 실습을 진행하였다. 실습 1. 구글드라이브에 있는 emails.csv 읽기 from google.colab import drive drive.mount('/content/drive') # colab의 구글드라이브 마운트 버튼을 누르면 해당 코드가 나온다. chdir로 디렉토리를 바꾸고 read_csv로 데이터를 불러오자. in: import os os.chdir('/content/drive/MyDrive/Colab Notebooks.. 2022. 5. 10.
[파이썬] Alexa 리뷰 실습: Word Cloud, STOPWORDS 리뷰로부터 인사이트를 얻고, 감성분석을 한다. 데이터셋은 아마존의 알렉사 제품에 대한, 3000개의 리뷰로 되어있다. 컬럼은 rating, date, variation(제품모델), verified_reviews, feedback Dataset: www.kaggle.com/sid321axn/amazon-alexa-reviews 실습 1. 패키지 설치 프로젝트를 위해, 아나콘다 프롬프트를 실행하고, 다음을 인스톨 하세요. conda install -c conda-forge wordcloud 실습 2. pandas로 파일 읽기 - 탭으로 되어 있는 tsv 파일 읽기 df = pd.read_csv('data/amazon_alexa.tsv',sep="\t") # 혹은 read_table활용 실습 3. verifi.. 2022. 5. 10.
[머신러닝] Hierarchical Clustering 하이어라키컬 클러스터링은 각 데이터간의 거리가 가장 가까운것부터 묶어 순차적으로 클러스터링한다. 또한 이를 관계도인 덴드로그램을 통해 나타낼수 있다. 완성된 덴드로그램을 분석하여 사용자가 데이터를 몇개의 그룹으로 나눌지 결정한다. # 주로 거리가 긴 (관계가 먼) 곳을 기준으로 나눠준다. df= 먼저 X값을 정한다. X = df.iloc[:,3:] 그 후, sch.dendrogram함수와 sch.linkage함수를 사용하여 덴드로그램을 그린다. in: sch.dendrogram(sch.linkage(X,method='ward')) plt.title('Dendrogram') plt.xlabel('Customers') plt.ylabel('Eculidean Distance') plt.show() out: #.. 2022. 5. 10.
[머신러닝] K-Means Clustering 클러스터링은 Unsupervised Learning이다. kmeans 클러스터링은 랜덤한곳에 점 두개를 찍어 점사이를 기준으로 수직이등분하여 영역을 나눈다. (클러스터링) 구분된 영역의 중앙으로 점들을 이동시키며 다시 수직이등분하여 영역을 나누는 작업을 반복하여 나눈 영역안에 다른 카테고리가 더이상 나타나지 않으면 작업을 끝낸다. 클러스터링은 k 개의 그룹을 만드는데 3개 이상의 클러스터링을 위해 위의 작업을 반복할때 사용자가 원치 않는 그룹이 될수있다. 위와 같은 문제는 해결한것이, K-Means++ 알고리즘이다. K-Means++는 WCSS(within-cluster sums of squares)를 구해 그룹화 작업을 한다. # 센터가 원소들과의 거리가 멀수록 값이 커진다. # 최소값에 가까워지는 갯.. 2022. 5. 9.