일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 교차검증
- 유사도
- DBSCAN
- list
- k-means
- T-검정
- 다중공선성
- pig
- 하둡
- 결정계수
- distribution
- DataFrame
- 데이터프레임
- pca
- join
- 밀도기반
- 딕셔너리
- merge
- cross validation
- Python
- 병렬 쿼리 시스템
- SQL on 하둡
- 분포
- 가설검정
- hive
- p-value
- SPLIT
- Sawzall
- 분산분석
- dict
- Today
- Total
목록분류 전체보기 (90)
one of a kind scene
벡터화한 A, B의 유사도를 구하는 방법에는 유클리디안 유사도로 대표되는 거리 기반 유사도와 코사인 유사도로 대표되는 각도 기반 유사도가 있다 각도 기반 유사도와 거리 기반 유사도는 언제 사용해야 좋은지 알아보자 1) 거리 기반 유사도 위 그림 중 좌측 그림을 보면 거리 기반 유사도는 좌표를 기준으로 생각했을때 비슷한(혹은 가까운) 좌표에 있는 점들이 유사도가 높다고 측정됨 2) 각도 기반 유사도 위 그림 중 우측 그림을 보면 각도 기반 유사도는 좌표를 기준으로 생각했을때 x축과 (0, 0)에서 좌표까지 이르는 점선 주변에 있는 점들이 유사도가 높다고 측정됨 아래 그림은 벡터 간의 코사인 유사도 값을 설명해주고 있음 쉽게 설명하면, 평행(=기울기가 같은)을 이루고 방향이 같은 벡터간의 유사도가 가장 높음..
(상황) 어떤 데이터 프레임 df에서 onehot인코딩하여 1값을 지닐 index를 담고있는 column1이 있을때, 이를 가지고 onehot 인코딩한 vector형태의 list를 column2에 만들어 주고자 한다. (예제) vector의 index를 담고있는 [1,4] 라는 list를 보고 [0,1,0,0,1]이라는 onehot 인코딩한 vector형태의 list 만들어주기 [1,4] → [0,1,0,0,1] 변환 (코드) # 비어있는 column2를 만들어 준다 df['column2'] = np.NaN for i in range(len(df)): # maxrange = len(벡터) maxrange = 벡터길이 설정해주면 됨 # onehot만들어줄 0으로만 이루어진 list만들어주기 onehot =..
(언제 사용?) 데이터 프레임을 특정 칼럼을 기준으로 정렬하게되면 index를 reset해줄 필요가 있기때문에 정렬방법과 index를 reset하는 방법을 알아야함 (예시 코드) # 1) 내림차순으로 정렬하기 ''' axis = 0 하면 세로방향으로 있는 데이터 정렬(우리가 흔히 쓰는거) 따라서 by = '칼럼이름' axis = 1 하면 가로방향으로 있는 데이터 정렬 따라서 by = 'row번호' ''' # ascending=False 하면 내림차순 df = df.sort_values(by=['칼럼1'], axis=0, ascending = False) # 2) index reset하기 df = df.reset_index(drop=True) (참고 url) https://pandas.pydata.org/..
(언제 사용?) 어떤 특정 dataframe df1을 가공하여 새로운 dataframe df2를 만들때, 빈 데이터 프레임을 만들어서 value들을 채워나갈때 빈 데이터 프레임이 필요 (빈 데이터 프레임 df2를 만드는 코드) df2 = pd.DataFrame(index=range(0,원하는 행갯수), columns=['칼럼이름1', '칼럼이름2']) df1에서 가공한 내용을 df2에 넣으면 됨
(상황) df1과 df2라는 데이터프레임이 있는데, userID라는 키를 가지고 left join하여 df3를 만들고자 한다 (코드) df3 = pd.merge(df1, df2, how ='left', on = 'userID') (merge 해석) 1) merge의 how인자에 join 방식을 적어주면 된다. - inner join은 how = 'inner'라고 하거나 how인자를 아예 안써주면 inner join - left join은 how = 'left' 라고 써준다 - right join은 how = 'right' 라고 써준다 - outer join은 how = 'outer' 라고 써준다 2) on인자에는 key값을 적어주면 된다 - on = 'userID'는 키값으로 userID로 설정한다는 의미
(상황) 데이터 프레임이 아래와 같을때 column1과 column2의 코사인 유사도를 계산하려고 한다 (데이터) df로 명명 idx column1 column2 column3 1 [1,0,1] [1,1,0] # cosin_similarity를 구하기 위한 라이브러리 import from sklearn.metrics.pairwise import cosine_similarity # cosine_similariy 계산해줄 수 있는 함수 cos_sim 정의 # 인자 a,b는 list형식으로 들어온다고 가정 # reshape은 계산 가능한 형태로 만들어주기 위해 해주는 것 def cos_sim(a,b): similarity = cosine_similarity(np.array(a).reshape(1,len(a))..