분류 전체보기
-
[데이터베이스] SQL 에서 NULL 다루기데이터베이스와 SQL 2022. 10. 4. 17:11
NULL 함수 어떤 프로그래밍 언어를 배우던지 NULL 값을 이해하고 다루는 것은 중요하다. NULL은 0과 다른 상수이다. 쉽게 말해 unknown value 라고 할 수도 있다. NULL 값과 어떤 수와 어떤 연산을 해도 그 값은 NULL이 된다. NULL은 일반적인 비교 연산자를 사용할 수 없다. unknown 값을 비교하는 것이 무의미 한 것과 마찬가지로.. 또한 NULL 값은 가장 작은 값으로 취급된다. 오름차순 정렬을 할 때 가장 먼저 NULL값이 온다. NULL과 관련된 함수로 다음과 같은 것들이 있다. ISNULL (), IS NOT NULL(): null 인지 아닌 지를 판단 COALESCE(): NULL 이 아닌 첫 번째 값을 반환 (중첩 CASE 문에 해당) NULLIF( ): 동일한..
-
데이터베이스의 개체 - 인덱스, 스토어드 프로시저, 트리거데이터베이스와 SQL 2022. 9. 16. 22:27
데이터베이스에서 '테이블'은 가장 기본이 되는 요소이다. 하지만 테이블 외에도 데이터베이스를 구성하는 중요한 개체들이 있는데 바로 인덱스, 스토어드 프로시저, 트리거, 함수, 커서 등이다. 이 부분에 대해서는 나도 아직 모르는 부분이 많아서, 상세한 내용은 더 공부를 한 후에 포스팅 하도록 하고, 이 포스팅에서는 각각의 개체들에 대해 간단한 개념만 정리하고자 한다. 1. 인덱스 (Index) 인덱스는 흔히 책이나 논문 의 맨 마지막 페이지에서 본 적이 있을 것이다. 책에서 특정 단어가 나오는 내용을 찾고자 할 때 인덱스에서 해당 단어에 해당하는 페이지를 확인하면, 바로 그 단어를 찾을 수 있다. 책이 두꺼울 수록 그 효과는 증대된다. 즉, 인덱스를 활용하여 우리는 훨씬 빠른 속도로 정보를 찾을 수 있다...
-
데이터베이스 모델링, SQLD의 기본 개념데이터베이스와 SQL 2022. 9. 14. 23:30
SQLD 자격증을 딴 지도 약 1년이 되어간다. 실무에서 SQL을 직접 사용하면서 SQL 의 기본적인 개념 역시 매우 중요하다는 것을 느끼고 있다. 그런 의미에서 SQLD 자격증을 준비할 때 공부했던 이론들을 다시 복습해 보기로 했다. 가장 먼저 데이터베이스 모델링에 대한 부분이다. 언뜻 쉽기도 하고, 지루하기도 한 내용이지만 해당 부분에 대한 개념을 확실히 잡아야 나중에 데이터 관리할 때 이상한 값들이 있는지 쉽게 파악할 수 있다. 데이터베이스 모델링? 데이터베이스 모델링이란, 현실 세계의 복잡한 데이터를 추상화, 단순화, 명확화를 통해 DBMS(DataBase Managemenet System) 에 옮겨 넣는 방법을 결정하는 과정이라고 할 수 있다. 쉽게 예를 들자면, 온라인 쇼핑몰에 들어가는 회원 ..
-
객체지향프로그래밍 (Object-Oriented Programming, OOP)프로그래밍 2022. 2. 7. 19:12
객체지향 프로그래밍? 컴퓨터 프로그램을 객체(object)들의 모임으로 파악하고자 하는 프로그래밍의 패러다임 중 하나이다. 사람은 사과를 보고 인식할 때, 머릿속에 추상적이고 개략적인 사과를 가지고, 현실의 사과를 보고 비교하여 인식할 수 있다. 일반적으로 우리는 사과를 인식할 때 "저건 R이 255 이고 지름이 몇이니까 저건 사과다" 라고 인식하지 않는다. 하지만 컴퓨터의 경우, 사과를 구분하기 위해서 구체적인 수치가 필요하다. 하지만 이럴 경우에 사과가 R이 240 이라면? 사과로 인식하지 않게 된다! 이러한 한계는 클래스(Class)와 객체(Object)를 통해 극복할 수 있다. 즉, 클래스라는 이상적인 세계에서 오브젝트라는 실존하는 세계로 가져와 구체화함으로써 컴퓨터가 사람처럼 인식하도록 하는 것..
-
좌표계 EPSG 코드 종류GIS 2021. 7. 14. 16:27
EPSG:3857 Google Mercator 구글맵, 빙 맵, 오픈스트리트맵(OSM) 등 +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs EPSG:4326 WGS84 GPS에서 사용하는 좌표계 구글어스 단위: decimal degrees +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs EPSG:5181 중부원점(GRS80) 2000년대 초반에 많이 사용되었음 다음카카오 지도 API +proj=tmerc +lat_0=38 +lon_0=127 +k=1 +x_0=200000 +y_0=500000 +ellps=GRS80..
-
좌표계(Coordinate Reference System, CRS) 기본 개념 - 투영법, 기준타원체GIS 2021. 7. 14. 15:59
좌표계는 공간상에서 객체의 위치를 표현하기 위한 방법으로, 공간정보를 다룰 때 가장 중요하면서도 까다로워서 확실한 이해와 숙련이 필요하다. 좌표체계는 크게 지리좌표계와 평면좌표계로 분류할 수 있다. 지리좌표계 (geographical coordinate system) 경도, 위도로 나타내는 절대 위치 좌표계 본초자오선과 적도면을 기준으로 경도, 위도를 결정 고도 정보를 통해 3차원으로 나타낼 수도 있음 평면좌표계 (planar coordinate system) X-Y축으로 구성된 평면-직각 좌표계가 일반적으로 사용됨 다양한 투영법에 따라 평면 좌표를 정의 3차원 지구를 2차원에 투영하면 왜곡이 발생 --> 분석하고자 하는 좁은 지역 (관심지역)에서 좌표를 정의할 때 사용 투영 방법에 따라 지역별로 왜곡의..
-
[R 데이터 분석/ 기초 통계] 확률변수, 확률질량함수, 누적분포함수, 이항분포, 포아송분포 (random variable, probability mass function, cumulative distribution function)머신러닝 with R 2020. 4. 25. 13:41
데이터 분석에 있어 데이터를 직접 생성하여 시뮬레이션을 할 경우가 있다. 그럴 때 우리는 난수를 생성하여 시뮬레이션을 하게 되는데, 난수들이 어떠한 분포를 따르게 될지 가정을 하고 생성을 하게 된다. 따라서 이때 필요한 몇가지 기초적인 개념들이 필요하다. 확률변수와 이산확률변수 확률변수 (random variable)란, 실험의 결과들을 수치에 대응시키는 변수들을 의미하며 여기서 '확률'은 실험을 하기 전에 어떤 값을 가질지 모르기 때문에 불확실성을 말한다. 확률 변수가 될 수 있는 값은 셀 수 있는 값을 가지거나 혹은 연속적인 값을 가질 수 있는데, 이때 셀 수 있는 값을 가지게 되는 확률변수를 이산확률변수(discrete)라고 하고, 연속적인 값(continuous)을 가지면 연속확률변수라고 한다. ..
-
머신러닝(machine learning)의 기본 개념과 원리 (인공지능 vs. 머신러닝 vs. 딥러닝)머신러닝 with R 2020. 2. 22. 18:34
인공지능 vs. 머신러닝 vs. 딥러닝 머신러닝에 대해 공부하다 보면 여러가지 알고리즘을 볼 수 있는데. 특히 초반에 딥러닝과 머신러닝의 개념이 섞여 있어 이것을 어떻게 구분해야 할지 헷갈리곤 했다. 내가 공부하는게 머신러닝인가 딥러닝인가... 결국 이렇게 구분하는게 큰 의미가 없다는 것을 깨달았지만! 그래도 이론적으로는 어느 정도 구분을 해두면 공부할 때 조금 더 도움이 되는 것 같기도 하다. 위 다이어그램 처럼 AI 라고 부르는 인공지능에서 머신러닝이라는 개념이 생겨나게 되었고 이를 더 발전시켜 성능을 업그레이드 시킨 개념을 딥러닝이라고 한다. 인공지능은 말 그대로 기계가 사람의 행동을 모방하게 하는 기술이다. 이는 어떻게 보면 뜬구름 잡기 같은 개념이기도 하다. 하지만 머신러닝을 통해 인공지능에 한..