전체 글 48

[ 빅데이터의 이해 ] 공공 데이터를 이용하여 지하철 이용객 데이터 분석 - 1

2021년 1학기에 진행한 프로젝트인데, 그동안 다사다난하여 이제야 프로젝트 로그를 적는다. 이 프로젝트는 학교 기말과제로 제출하였고, 제목에도 있듯이 '빅데이터의 이해'라는 과목이었다. 해당 기말과제는 자유로운 주제로 데이터를 분석하는 것이었다. 단, 공공데이터를 이용해야 된다. 이 과목은 프로그래밍 언어를 가르치는 것은 아니다. 주로 빅데이터 이론에 대해서 배웠고, 분석 방법도 이론만 배웠다. 교양 과목이었지만, python 언어를 활용할 수 있기 때문에 다른 수강생들과 차이점을 두기 위해 python을 이용해서 분석하기로 마음을 먹었다. 참고문헌 포함하여 10페이지 안으로 보고서를 작성해야 되기 때문에 많은 내용을 담지는 못하지만, 대충 하는 성격은 못되어서 보고서에 담지 못한 내용까지 포함하여 블..

[ SQL ] 순위를 정해주는 함수들(RANK,DENSE_RANK,ROW_NUMBER)

순위를 정해주는 3가지 함수에 대해서 포스팅해볼려고 한다. 자주 사용하지는 않지만, 알고 있으면 다 피와살이 된다. 사용하는 방법은 똑같고, 결과값이 조금씩 다르다. 사용한 DBMS : ORACLE SQL 클라이언트 : DBeaver 빠른 이해를 위해 임시 데이터로 EMPLOYEE_TEST 테이블의 토트넘 선수들을 넣었다. CREATE_DT : 해당 데이터를 넣은 시간 PRICE : 선수 값 (전혀 현실고증된 것 없고, 걍 임의의 값을 넣었다.) 1. RANK() - 해당 컬럼의 값이 동일값이면 같은 순위로 배정한다. - 그 후 다음 순위의 값은 그 전 같은 순위의 갯수만큼 제외하고 시작한다. [ 기본 구조 ] SELECT A.*, RANK() OVER((PARTITION BY [그룹화할 컬럼]) ORD..

Languages/SQL 2022.01.31

[ SQL ] 중복 제거하고 조회하기

중복을 제거하고 조회(SELETE)하는 방법은 다양하다. 그 중에서 알고 있는 3가지 방법에 대해서 적어볼려고 한다. 사용한 DBMS : ORACLE SQL 클라이언트 : DBeaver 빠른 이해를 위해 EMPLOYEE_TEST 테이블의 중복된 데이터를 넣었다. 1. DISTINCT - 이 방법이 제일 간단하고 자주 사용하는 명령어이다. [명령어] SELECT DISTINCT [중복제거할 컬럼] FROM [TABLE_NAME]; [단일행] [다중행] 다중행 방법으로 * 사용도 가능하다 * 은 모든행에서 중복을 제거하고 보여주는 방법이다. CREATE_DT가 1초 차이가 나서 같지 않다고 판단하여 3개의 행이 조회되었다. 2. GROUP BY 이용 - 동일한 값을 그룹화하면서, 이 방법 또한 유니크한 값만..

Languages/SQL 2022.01.31

[ JAVA ] JVM에 저장된 데이터 위치 값 확인

JAVA에서는 개발자가 생성 혹은 선언한 데이터(변수)들은 JVM 메모리영역에 저장된다. JVM 메모리영역에서도 참조형 변수는 힙 영역 기본형 변수는 스택 영역에 저장된다. 참조형 변수 클래스가 인스턴스화 되어 생성된 객체 문자열 리터럴을 이용해서 값을 대입하거나, new 연산자를 사용해서 생성 예시 : String, Date 클래스가 있다. java에 있는 모든 클래스의 첫 글자는 대문자이기 때문에 참조형도 대문자로 시작한다. 반대로 기본형은 소문자로 시작한다. 만약 사용자가 클래스를 만들때 이름은 소문자로 했다면 참조형은 소문자로 될 수도 있다. (하지만, 관례에 맞지않는 네이밍룰이므로 올바른 방법은 아니다.) 기본형 변수 자바에서 기본적으로 제공하는 데이터형 예시 : int , long, byte,..

Languages/JAVA 2022.01.22

[ YouTube ] 유튜브 알고리즘에서 벗어나기

최근에 이것을 알고 나서 굉장히 큰 충격을 받았다. 요즘 유튜브 알고리즘 때문에 해야 될 일을 못하고 유튜브를 보는데 시간을 다 허비한 경우가 많았다. 컴퓨터를 키면 자동으로 게임을 키는 것처럼 게임을 삭제했더니 이제는 자동으로 유튜브를 켜서 고생했는데, 아는 지인에게 이것 관련하여 말을 하다가 알고리즘을 억제시킬 수 있는 좋은 크롬 플러그인을 알려주어서 공유하려고 한다. 플러그인 이름은 unhook youtube로 구글에 검색하여 다운로드하면 된다. 적용 방법 1. unhook youtube 검색 2. 들어가서 다운로드 - 이미 다운 받아서 버튼이 chrome에서 삭제로 되어있다. 3. 크롬 1시방향에 보면 퍼즐 모양이 있다. 퍼즐 아이콘 클릭 4. 다운 받은 플러그인들이 나오는데 거기에서 Unhook..

꿀팁 모음 2022.01.11

[ SQL ] Tibero comment 추가

이 명령어는 ORACLE이랑 동일한 것 같다. 기본구조 -- TABLE COMMENT COMMENT ON TABLE [TABLE_NAME] IS [COMMENT]; -- COLUMN COMMENT COMMENT ON COLUMN [TABLE_NAME] IS [COMMENT];​ Example -- TABLE COMMENT COMMENT ON TABLE COMPANY.EMP IS '직원정보'; -- COLUMN COMMENT COMMENT ON COLUMN COMPANY.EMP.NAME IS '직원이름';​​ COMPANY 스키마 EMP 테이블의 코맨트를 '직원정보'로 지정하였고, EMP 테이블의 NAME 컬럼을 '직원이름' 이라고 지정하였다.

Languages/SQL 2022.01.05

[ SQL ] Tibero DML

ORACLE 과 동일한 명령어는 많지만, 조금씩 틀린점이 있다. INSERT 1. 직접넣기 기본구조 INSERT INTO [TABLE NAME](COLUMN1 COLUMN2, COLUMN3..) VALUES(COLUMN1 DATA, COLUMN2 DATA, COLUMN3 DATA);​ Example INSERT INTO COMPANY.EMPLOYEE(NAME,AGE) VALUES (jerry, 26); COMPANY 스키마 EMPLOYEE 테이블의 NAME,AGE의 데이터를 추가하는 쿼리이다. 만약 TABLE의 모든컬럼 값을 DATA에 넣으면 컬럼은 생략이 가능하다. 2. 간접넣기 기본구조 INSERT INTO [TABLE NAME](COLUMN1, COLUMN2, COLUMN3) SELECT COLUM..

Languages/SQL 2022.01.02

[ SQL ] Tibero DDL

ORACLE 과 동일한 명령어가 많지만, 조금씩 틀린점이 있다. CREATE 1. 테이블 생성 기본 구조 CREATE TABLE [table name] ( [column name1] [column type1], [column name2] [column type2], [column name3] [column type3], -- CONSTRAINT [PK name] PRIMARY KEY ([column name]) ); Example CREATE TABLE COMPANY.EMPLOYEE ( EMP_NUMBLE NUMBER, NAME VARCHAR(20) NOT NULL, AGE NUMBER, ADDRESS VARCHAR(100), START_DATE DATE, CONSTRAINT PK_EMPLOYEE PRI..

Languages/SQL 2021.12.30

[ Linux ] FTP KEY를 이용하여 접속하기

오늘 업무를 하면서 깨달음을 크게 얻어서 오랜만에 기록 출처를 미리 밝힙니다. https://angelhyun.tistory.com/entry/sftp-%EC%A0%91%EC%86%8D%EC%8B%9C-key-%EC%9D%B8%EC%A6%9D%EC%9C%BC%EB%A1%9C-%EC%A0%91%EC%86%8D%ED%95%98%EA%B8%B0-%ED%8C%A8%EC%8A%A4%EC%9B%8C%EB%93%9C-%EB%AF%B8%EC%9E%85%EB%A0%A5 sftp 접속시 key 인증으로 접속하기 (패스워드 미입력) A 서버 sam 계정에서 B 서버 top 계정으로 sftp 접속시 패스워드 없이 접속 하려고 할때 다음과 같은 작업이 필요합니다. A 서버에서 접속하려는 계정으로 ssh key 가 존재해야합니다..

Linux 2021.11.30

[Baekjoon 1032] 명령 프롬프트 (python)

문제 공유: https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 www.acmicpc.net [문제 설명] 시작 -> 실행 -> cmd를 쳐보자. 검정 화면이 눈에 보인다. 여기서 dir이라고 치면 그 디렉터리에 있는 서브 디렉터리와 파일이 모두 나온다. 이때 원하는 파일을 찾으려면 다음과 같이 하면 된다. dir *.exe라고 치면 확장자가 exe인 파일이 다 나온다. "dir 패턴"과 같이 치면 그 패턴에 맞는 파일만 검색 결과로 나온다. 예를 들어, dir a? b..

코드문제풀이 2021.06.13