SQL - SELF JOIN, VIEW
·
Data Analyst/SQL
SELF JOIN- 셀프 조인이란 하나의 테이블을 스스로와 조인하는 것을 말합니다. 즉, 같은 테이블의 여러 행을 서로 결합할 때 사용됩니다.- 셀프 조인을 사용하면 테이블의 특정 행을 동일한 테이블 내 다른 행과 결합할 수 있습니다.- INNER JOIN 구문을 사용하여 셀프 조인을 할 때, 테이블을 마치 두 개의 서로 다른 테이블처럼 취급합니다. 이를 위해 별칭(Alias)을 사용하여 테이블의 두 개 버전을 구분합니다.- 셀프 조인은 특히 계층적 관계나 같은 테이블 내에서의 상하 관계를 표현할 때 유용합니다.예시 :- 한 회사의 직원 테이블이 있다고 가정해봅시다.- 이 테이블은 각 직원의 이름과 상사(매니저)에 대한 정보를 포함하고 있습니다. 그런데 이 매니저도 같은 테이블에 포함된 또 다른 직원입니..
ML - PANDAS(Pivot-Tables)
·
Data Analyst/ML
Pivot Tables- 피벗 테이블은 데이터를 재구성하여 관계와 연결성을 명확하게 보여주는 강력한 도구입니다.- 데이터 분석을 하다 보면 원시 데이터에서 패턴을 파악하거나, 특정 기준에 따라 데이터를 집계하고 요약해야 할 때가 많습니다.- 이럴 때 피벗 테이블을 사용하면 복잡한 데이터도 쉽게 시각화할 수 있습니다.Pivot method- 열 값을 기준으로 데이터를 재구성하고, 인덱스를 재지정하여 데이터를 재배열하는 방법입니다.- 피벗 메서드는 주로 데이터 분석, 시각화, 그리고 탐색에 활용되며, 데이터의 구조를 쉽게 파악하거나 요약된 정보를 제공하는 데 유용합니다.사용 예시# 'Company','Product','Licenses'컬럼 값만 보겠습니다.licenses = df[['Company','Pro..
SQL - SubQuery
·
Data Analyst/SQL
WHERE 절에 중첩된 SQL 서브쿼리 (IN 절 사용)- 우선 서브쿼리란 다른 쿼리 안에 포함된 쿼리를 의미합니다. 이를 내부 쿼리 또는 중첩  쿼리라고도 합니다.- 이러한 서브쿼리는 WHERE 절 안에 중첩되어 사용되며, 주로 특정 조건에 맞는 데이터를 선택할 수 있습니다.- IN 절과 함께 사용하면, 내부 쿼리에서 반환된 값 중 하나라도 일치하는 경우 해당 데이터를 선택할 수 있습니다.- 서브 쿼리는 하나의 값, 하나의 행, 하나의 열 또는 전체 테이블을 반환할 수 있습니다.- 여러 서브쿼리를 종첩하여 사용할 수 있으며, SQL엔진은 가장 내부의 쿼리부터 차례대로 실행 합니다.-- 매니저의 e.first_name, e.last_name알기 위해서 subquery로 dept_manager의 emp_n..
ML - PANDAS(Text Methods for String Data)
·
Data Analyst/ML
Text Methods- 일반적인 파이썬 문자열에는 다양한 메서드 호출이 가능합니다.mystring = 'hello'mystring.capitalize()# 'Hello'# isdigit() 문자열에 숫자가 있을 경우 True 반환 아닐 시 False 반환mystring.isdigit()# False# 위의 코드 말고도 여러가지 문자열 메소드들이 있습니다.Pandas and Text- Pandas는 기존의 문자열 메소드에서 표시된 것보다 더 많은 일을 할 수 있습니다.names = pd.Series(['andrew','bobo','claire','david','4'])names.str.capitalize()names.str.isdigit()Splitting , Grabbing, and Expandingt..
SQL - 여러 테이블 JOIN, SQL JOIN 사용 시 유용한 팁, UNION, UNION ALL
·
Data Analyst/SQL
여러 테이블 JOIN- SQL에서 두 개 이상의 테이블을 JOIN할 때는 테이블 간의 관계를 명확히 이해하는 것이 중요합니다.- 여러 테이블을 JOIN하는 과정은 직관과 명확한 연결 방식이 필요합니다. 여러 테이블 JOIN의 단계여러 테이블을 JOIN할 때는 단계적으로 접근하는 것이 좋습니다:첫 번째 단계: 두 개의 테이블을 기본적으로 JOIN합니다.두 번째 단계: 첫 번째 JOIN의 결과를 다른 테이블과 다시 JOIN합니다.세 번째 단계 이후: 동일한 방식으로 추가적인 테이블을 계속 JOIN합니다.이 과정에서 각 테이블의 공통 열을 기준으로 JOIN 조건을 설정해야 하며, JOIN 방식은 INNER JOIN, LEFT JOIN, RIGHT JOIN 등 상황에 맞게 선택할 수 있습니다./* 3개의 테이블..
ML - PANDAS(Combining DataFrames)
·
Data Analyst/ML
연결(Concatenation):pd.concat() 함수를 사용하여 데이터프레임을 수직 또는 수평으로 연결합니다.이 방법은 인덱스나 열이 동일한 데이터프레임을 연결할 때 유용합니다.# 데이터 만들기data_one = {'A': ['A0', 'A1', 'A2', 'A3'],'B': ['B0', 'B1', 'B2', 'B3']}data_two = {'C': ['C0', 'C1', 'C2', 'C3'], 'D': ['D0', 'D1', 'D2', 'D3']}# 데이터프레임으로 변환one = pd.DataFrame(data_one)two = pd.DataFrame(data_two) # concat을 사용하여 데이터 프레임 합치기, axis=0 행을 기준으로 합치기axis0 = pd.concat([one,two..
SQL - RIGHT JOIN, SQL 조인 구문: 새로운 방식과 오래된 방식, CROSS JOIN
·
Data Analyst/SQL
RIGHT JOIN- 오른쪽 테이블의 모든 레코드를 포함하며, 왼쪽 테이블에서 일치하는 레코드가 있으면 이를 결합합니다.- 실제로 RIGHT JOIN은 LEFT JOIN과 테이블 순서만 바꿔서 사용할 수 있습니다. 결과는 동일하지만, 조인 방향이 반대가 됩니다SELECT d.dept_no, m.emp_no, d.dept_nameFROM dept_manager_dup m RIGHT JOIN departments_dup d ON m.dept_no = d.dept_noORDER BY dept_no;SQL 조인 구문: 새로운 방식과 오래된 방식오래된 조인 구문에서는 WHERE 절을 사용하여 테이블을 결합합니다SELECT t1.column_name, t2.column_nameFROM..
SQL - INNER JOIN, DUPLICATED, LEFT JOIN
·
Data Analyst/SQL
INNER JOIN- INNER JOIN은 두 테이블 간의 공통된 값을 가진 레코드만을 결합하여 결과로 반환합니다.- 이 조인 방식에서는 두 테이블에 모두 존재하는 레코드만 결과에 포함되며, 어느 한 테이블에만 존재하는 값은 결과에 포함되지 않습니다 - 벤 다이어그램을 생각 하면 교집합과 같다 보시면 될 거 같습니다./*dept_manager_dup와 departments_dup 에서의 dept_no가 설정된 관리자 데이터를 추출하는 쿼리입니다.예를 들어 departments_dup에서 dept_no ='d002'가 없고 dept_manager_dup에는 있다면 해당 데이터는 추출하지 안습니다.*/SELECT m.dept_no, m.emp_no, d.dept_nameFROM dept_mana..
ML - PANDAS(Useful Methods) - 2
·
Data Analyst/ML
Pandas에서 자주 사용하는 메서드 및 함수 소개 - 2replacereplace 메서드는 값들을 다른 값으로 빠르게 대체할 수 있는 방법입니다.이 메서드를 사용하면 데이터프레임이나 시리즈 내의 특정 값을 원하는 값으로 일괄적으로 바꿀 수 있습니다. # to_replace가 바꿀 값을 입력# value가 어떤 것으로 바꿀지 입력하는 것df['Tip Quality'].replace(to_replace='Other',value='Ok')unique- unique 메서드는 해당 DataFrame의 컬럼명의 값들의 고유값 가져옵니다.즉, 중복을 없앤 값들을 가져오는 방법입니다.df['size'].unique()# 결과 : array([2, 3, 4, 1, 6, 5], dtype=int64)# 고유값 개수를 세..
ML - PANDAS(Useful Method) - 1
·
Data Analyst/ML
Pandas에서 자주 사용하는 메서드 및 함수 소개소개할 매서드와 함수는 데이터 처리 및 분석 과정에서 매우 유용하며, Pandas 문서를 통해 더 많은 기능들을 탐색할 수 있습니다. The .apply() method- 이 메서드를 사용하면 데이터프레임의 열(column)에 사용자 정의 함수를 적용하고, 해당 함수를 열 전체에 브로드캐스트(적용)할 수 있습니다.# 숫자에서 마지막 4개의 숫자만 가져온다.def last_four(num): return str(num)[-4:] df['last_four'] = df['CC Number'].apply(last_four) df['last_four']- 이와 같이 모든 열의 값들이 사용자 정의 함수들을 적용한 결과로 바뀌게 되었습니다. apply()..
hmm06
hmm06 님의 블로그