- 데이터베이스
- boostcourse
- 코딩테스트 python
- SQL
- 빅데이터 분석 기반 에너지 운영 관리자 양성 및 취업과정
- boostcoures
- 데이터 분석 기반 에너지 운영 관리자 양성 및 취업과정
- 오라클
- 파이썬
- [멀티잇]데이터 시각화&분석 취업캠프(Python)
- 빅분기
- PY4E
- Ai
- 이것이 취업을 위한 코딩테스트다 with 파이썬
- Oracle
- 코딩테스트
- 부스트코스
- python
- AI 플랫폼을 활용한 데이터 분석
- 정보처리기사
- r
- DB
- Machine Learning
- 빅데이터분석기사
- 프로그래머스
- 난생처음 R코딩&데이터 분석 저서
- 기초다지기
- 네이버부스트캠프
- 인공지능기초다지기
- 이기적
- Today
- Total
목록Programming (92)
매일공부
pd.merge 활용 > 교집합을 포함한 차집합 구할 수 있음 - 교집합을 포함하지 않은 진짜 차집합만 구하려면? pd.merge() + .query() + .drop() = 모두 함께 활용 Q. Series ser1에서 Series ser1에 있는 항목을 제거하시오 입력> ser1 = pd.Series([1, 2, 3, 4, 5]) ser2 = pd.Series([4, 5, 6, 7, 8]) ser1 = pd.Series([1, 2, 3, 4, 5]) ser2 = pd.Series([4, 5, 6, 7, 8]) ser1.name = 0 #series data에 이름 부여 ser2.name = 0 #outer속성으로 합집합으로 merge하고 추가 열에 교집합 표시(indicator) ser1 = pd.m..
Python Modeling library NumPy 라이브러리 : 동일한 데이터 유형의 값을 저장하는 고성능 다차원 배열 개체 : 배열 및 벡터화에 대한 수학 연산이 용이 SciPy 라이브러리 : NumPy 배열 객체를 기반 Matplotlib(시각화), Pandas(데이터정제) 및 SymPy와 같은 도구를 포함하는 스택의 일부 : 선형 대수, 보간, 최적화, 통합 및 통계와 같은 효율적인 수학 루틴을위한 모듈이 포함 Matplotlib : 2D 시각화 Seaborn : 고급 기능을 갖춘 Matplotlib의 확장 > 높은 수준의 추상화, 다중 플롯 그리드 제공 Scikit-learn : 온갖 머신러닝 라이브러리가 있는 기계학습 라이브러리 TensorFlow : 이미지 분류에 최적화되어 있는 라이브러리..
numpy 수치해석, 과학계산을 위한 파이썬 핵심라이브러리 C언어로 구현된 라이브러리 array 단위 > 데이터 관리 및 연산 수행 ndarray : nd(다차원) + array(배열, 동일한 타입의 값을 요소로 저장) = 고성능의 다차원 배열 자료구조 NumPy documentation : https://numpy.org/doc/stable/ 호출 = import numpy as np numpy 다차원 배열이란? 적은 메모리로 많은 데이터를 빠르게 처리 가능 모든 원소 = 같은 자료형(type) > 원소에 대한 접근&반복문 실행이 빨라짐 생성 시 선언한 size 동적 변경 불가 = 원소의 개수 변경X > 처음에 (4, 4) 배열을 생성하면 > (5, 5) 등 다른 size로 바꿀 수가 없음 배열 연산 ..
분석함수(WINDOW 윈도우 함수) 구문 - 관계형 데이터베이스 : 컬럼간 연산, 비교, 연결, 집합에 대한 집계 처리 용이 : 행과 행간의 관계 정의, 비교, 연산은 하나의 sql문으로 처리 어려움 (성적이 나보다 다음 등수에 해당하는 사람과 얼마나 차이가 나는지 이런 것) => 절차적 데이터베이스 사용 필요 - 절차적 데이터베이스 > PL/SQL, SQL/PL, T-SQL, PRO*C(금융권에서 사용) 같은 절차형 프로그램을 작성해서 처리 > INLINE VIEW로 굉장히 복잡하지만 행간 비교 가능 >> 이러한 행간 관계정의, 비교, 연산 개선하는 것 = 분석함수(WINDOW 함수) SELECT 분석함수(arguments) --2 over (PARTITION BY 컬럼list ORDER BY 컬럼li..
SELECT ~문 = query문 SUBQUERY(nested query, inner query) - 하나의 SQL문 안에 포함되는 또다른 SQL문 - 조건값을 몰라서 query를 2번 이상 수행해야하는 경우, 먼저 수행해야 하는 query를 subquery로 선언 SELECT ~ --main query, outer query FROM WHERE 컬럼 연산자 ( SELET ~ -- subquery, nested query, inner query FROM ~ -- 먼저 1번 수행 [WHERE~ ] [group by ~] [having~] ) ; --order by절을 제외하고 모든 구문 정의 할 수 있음) - 서브쿼리 사용 가능 위치 : select절, from절, where절, having절, order..
- 집합연산자 선언 위치 SELECT 컬럼 FROM 테이블 집합연산자 SELECT 컬럼 FROM 테이블 [ORDER BY 정렬] : SELECT문과 SELECT문 사이에 선언 - 집합연산자를 선언하는 select문 컬럼 개수와 컬럼 타입이 일치해야함 order by 절은 마지막 select 문에서만 선언할 수 있음 결과 컬럼 > 첫번째 select문에 선언된 컬럼명 또는 alias - 집합연산자의 종류 union (합집합) : select의 결과집합(resultset)에서 첫번째 컬럼으로 정렬수행 후 비교해서 중복된 레코드를 제거해서 결과집합에 한번만 포함시킴 (cost가 비싼 연산 수행) union all (합집합) : 정렬 없이 첫번째 결과집합 뒤에 두번째 select의 결과집합을 append > 중..
- JOIN이란? : 2개 이상의 테이블로부터 동일속성의 값이 일치할 때 레코드를 결합해서 결과집합으로 생성 : 가로로 join - JOIN 종류 equi join (inner join) 동일 속성값이 일치할 때 조인 수행, = 연산자가 조인 조건에 사용됨(일치하지 않는 절은 제외 됨) parent.pk = child.fk.컬럼으로 조인 조건이 선언됨 [ SELECT 컬럼 FROM 테이블1 a, 테이블2 b WHERE a.컬럼명 = b.컬럼명 ; ] inner join equi join과 동일 목적으로 시행 [ SELECT 컬럼 FROM 테이블1 a INNER JOIN 테이블2 b ON a.컬럼명 = b.컬럼명 (WHERE~) ; ] natural join inner join의 하위 개념 두 테이블에서 ..
- multiple row function(=group function): 복수행 함수 select ~ column, 표현식, 그룹함수 표현식, ... [as alias] ----4 from -----1 [where ~] ----2 filter 조건 [group by ~] ----3 컬럼선언, ##alias, column position 선언 불가## [order by ~] ----5 컬럼, 표현식, alias, colmn position 전체 row를 대상으로 함수 수행 후 1개의 결과 반환 그룹핑된 row를 대상으로 함수 수행 후 1개의 결과 반환(group by 절과 함께 사용) -- count(표현식) : null을 제외한 값의 개수 반환(행의 수 반환) count(*) : not null 제약조..
Q. 주사위를 10번 던져서 각 숫자가 몇 번씩 나왔는지 알아보려 한다. 리스트를 활용하여 리스트에 각 주사위를 던져 나온 숫자의 개수를 저장하고 출력하시오. import random dice = [] for i in range(10): dice.append(random.randint(1, 6)) print("1이 나온 개수 :", dice.count(1)) print("2이 나온 개수 :", dice.count(2)) print("3이 나온 개수 :", dice.count(3)) print("4이 나온 개수 :", dice.count(4)) print("5이 나온 개수 :", dice.count(5)) print("6이 나온 개수 :", dice.count(6)) 1이 나온 개수 : 3 2이 나온 개수..
- 1차원 리스트 연습문제 Q. 1~100사이의 정수 난수 10개 중에서 max값 출력하라 import random ran_number = [] for i in range(10): ran_number.append(random.randint(1, 100)) ran_number.sort() print("저장된 난수 10개 :", ran_number) print("난수 중에서 가장 큰 값 :", ran_number[9]) 저장된 난수 10개 : [11, 18, 28, 33, 35, 42, 42, 72, 75, 80] 난수 중에서 가장 큰 값 : 80 Q. 1~100 사이의 정수 난수 10개 중에서 5의 배수의 개수와 합계 평균을 출력하라 import random ran_number = [] ran_number..