Data Science
-
Numpy random 함수 (rand, randint, randn, random, power)Data Science/Pandas & Numpy&Scikit-learn 2022. 10. 12. 16:39
1. numpy.random.rand n개의 demetion(차원) 정보를 입력받은 후 [0,1) 값의 무작위 샘플로 채운다. numpy.random.rand( d0, d1, ... , dn ) 2. numpy.random.randint 최솟값, 최댓값, 샘플사이즈, 데이터타입을 입력받고 해당하는 샘플을 생성한다. ※ high 파라미터가 입력되지 않으면, [0, low) 범위의 값을 생성한다. ※ low 및 high 파라미터는 배열을 사용하여 개별로 조건을 걸어줄 수 있다. numpy.random.randint(low, high=None, size=None, dtype=int) 3. numpy.random.randn 1번의 numpy.random.rand 함수와 유사하나, standard normal 분..
-
파이썬에서 시간값 다루기 - Datetime, TimedeltaData Science/데이터마이닝 2022. 10. 7. 13:14
파이썬에서 datetime 라이브러리를 사용하여 시간값을 다룰수 있다. 1.현재 시간 출력하기 및 과거/미래 시간 계산하기 datetime 라이브러리로 현재시간을 받아올 수 있으며, timedelta 라이브러리로 datetime 객체의 더하기, 빼기를 수행할 수 있다. from datetime import datetime, timedelta # 현재 시간 print('현재시간 : ',datetime.now()) # 하루 전 시간 delta = datetime.now() - timedelta(1) print('하루전 시간 : ',delta) # 이주일 전 시간 delta = datetime.now() - timedelta(14) print('이주전 시간 : ',delta) # 1년 전 시간 delta = ..
-
Hierarchy Clustering(계층적 군집화) 및 Dendrogram Visualization(덴드로그램 시각화) - AgglomerativeClustering, linkage, dendrogramData Science/ML&DL 모델 2022. 10. 5. 20:40
해당 글에서는 hierarchy clustering(계층적 클러스터링,군집화)을 파이썬으로 구현해본다. 사용되는 라이브러리는 아래와 같다. 모델 : scipy.cluster.AgglomerativeClustering 거리계산 : scipy.cluster.hierarchy.linkage 시각화 : scipy.cluster.hierarchy.dendrogram 평가 : sklearn.metrics.silhouette_score , silhouette_samples, yellowbrick.cluster.KElbowVisualizer Clustering에 대한 이론적인 부분은 "클러스터링 기법(개념,타당성,평가)" 글을 참고. 1. 데이터 준비 sklearn에서 제공해주는 iris 데이터를 사용한다. clust..
-
DBSCAN(Density-based spatial clustering of applications with noise, 밀도기반 군집화) 파이썬구현하기Data Science/ML&DL 모델 2022. 10. 5. 15:56
해당 글에서는 density based clustering(밀도기반 클러스터링,군집화)을 파이썬으로 구현해본다. 사용되는 라이브러리는 아래와 같다. 모델 : sklearn.cluster.DBSCAN 평가 : sklearn.metrics.silhouette_score , silhouette_samples, yellowbrick.cluster.KElbowVisualizer Clustering에 대한 이론적인 부분은 "클러스터링 기법(개념,타당성,평가)" 글을 참고. 1. 데이터 준비 sklearn에서 제공해주는 iris 데이터를 사용한다. clustering이기에 종속변수를 제외하고 독립변수만으로 데이터프레임을 구성한다. import pandas as pd from sklearn import datasets..
-
K-means Clustering 파이썬 구현하기Data Science/ML&DL 모델 2022. 10. 5. 15:38
해당 글에서는 clustering(클러스터링,군집화)의 대표적 기법인 K-Means를 파이썬으로 구현해본다. Clustering에 대한 이론적인 부분은 "클러스터링 기법(개념,타당성,평가)" 글을 참고. 1. 데이터 준비 sklearn에서 제공해주는 iris 데이터를 사용한다. clustering이기에 종속변수를 제외하고 독립변수만으로 데이터프레임을 구성한다. import pandas as pd from sklearn import datasets iris = datasets.load_iris() X = iris.data y = iris.target df = pd.DataFrame(X, columns = iris.feature_names) print(df) clustering에서는 각 독립변수(컬럼)별로 ..
-
클러스터링 기법 - 개념, 타당성평가, 종류Data Science/데이터마이닝 2022. 10. 5. 10:33
1. 클러스터링이란 클러스터링(clustering) = 군집화 = 군집분석 비지도학습의 일종으로 class정보(label)없이 속성정보(feature,독립변수)만으로 유사한 속성을 가진 객체들을 군집으로 묶어주는 데이터마이닝 기법 군집 간 분산 최대화 : 서로 다른 군집간에는 멀리 떨어져있어야한다. 군집 내 분산 최소화 : 같은 군집 내에서는 잘 뭉쳐있어야한다. 유사성 척도 거리(distance) 척도 : 값이 작을수록 두객체가 유사함 상관계수(correlation) 척도 : 값이 클수록 두 객체가 서로 유사함 거리척도 유클리디안 거리 : 가장 일반적인 거리척도 민코프스키 거리 : 유클리디안 거리의 일반화 방법 마할라노비스 거리 : 정규분포에서 특정 객체의 값이 얼마나 평균에서 멀어져있는가를 나타내는 거..
-
연관규칙(Association rules) 파이썬 구현하기 mlxtend.frequent_patterns.aprioriData Science/데이터마이닝 2022. 10. 4. 17:06
from mlxtend.frequent_patterns import apriori from mlxtend.frequent_patterns import fpmax from mlxtend.frequent_patterns import association_rules itemsets = apriori(fp_df, min_support=0.2, use_colnames=True) itemsets.sort_values("support", ascending=False) #fpmax(fp_df, min_support=0.2, use_colnames=True) rules = association_rules(itemsets, min_threshold=0.5) antecedents : X consequent : Y antec..
-
[Pandas] 데이터프레임 필터링, 특정 조건에 맞는 행/열 추출하기 (DataFrame.loc[])Data Science/Pandas & Numpy&Scikit-learn 2022. 10. 2. 18:24
이번 글에서는 데이터프레임에서 원하는 조건들을 적용해서 원하는 행 또는 열을 추출하는 방법을 작성한다. Pandas에서 데이터프레임 필터링 방법은 여러가지가 있지만 해당글에서는 loc만을 다룬다. 1. 데이터 준비 seaborn 라이브러리에서 제공하는 taxis 데이터셋을 사용한다. (참고 : sns.load_dataset, 파이썬 데이터샘플 불러오기) import seaborn as sns df = sns.load_dataset('taxis') print(df) print(df.info()) 2. Pandas DataFrame.loc[] 사용법 가장 기본이 되는 문법은 DataFrame.loc[ 행조건 , 열조건 ] 이다. 행조건에는 index 또는 bool 타입의 리스트가 사용된다. 열조건에는 컬럼 ..