본문 바로가기

분류 전체보기117

Airbnb New User Bookings 데이터 읽기 및 가공 - Kaggle Project(2) 본 포스팅을 Kaggle의 yYaMamoto님의 kernel을 인용하여 작성했습니다 이 글에서는 airbnb 데이터를 읽고 가공하는것에 대해 알아보겠습니다.사용한 언어는 R입니다. 데이터 분석을 시작할 때 제일 먼저 해야하는 건 무엇일까요? 당연히 분석을 위한 데이터를 확보하는 것입니다. 데이터를 확보하고 읽는 것은 매우 중요합니다. 그리고 분석을 편하게 하기 위해 적절한 가공이 필요합니다. 예를 들어 다음과 같은 날짜 데이터가 있다고 가정합시다. 2017년 8월 12일 이 날짜는 한글과 숫자로 이루어져있기 때문에 R 혹은 Python을 이용해 읽었을 때 문자열로 읽을 가능성이 큽니다. 나중에 날짜로 정렬을 할 수도 있고 특정 날짜 범위내의 데이터만 필요할 경우도 생기기 때문에 적절한 변형이 필요합니다... 2017. 11. 9.
자료구조 : 연결리스트 (Linked list) 자료를 저장하는 방법 중 크게 배열과 연결리스트가 있습니다. 그럼 언제 배열을 사용하고 언제 연결리스트를 쓸까요? 먼저 두 자료구조의 장, 단점에 대해 알아보겠습니다. 표1 배열, 연결리스트 장점 및 단점 배열은 접근이 빠르고 간단합니다. n번째 인덱스에 접근할 경우 arr[n]을 사용하면 빠른 시간에 접근할 수 있습니다. 그러나 배열을 사용하기 위해서는 처음에 배열의 크기를 선언해야 하고 크기의 수정이 불가능하기 때문에 메모리 사용이 비효율적입니다. 또한 중간 데이터를 삭제 했을때 빈 배열을 처리하는 것이 번거롭습니다..( 자료구조를 공부해보신 분이라면 이해하실 겁니다ㅠ) 그러나 연결리스트는 위의 단점을 해결할 수 있습니다. 필요할때마다 데이터를 생성하여 연결하면 되기 때문에 메모리를 효율적으로 사용가.. 2017. 11. 8.
2017 하반기 신한은행 IT직군 1차면접 후기 신한은행 IT직군 1차 면접이 있었습니다! 신한은행은 다른 은행들과 다르게 채용공고부터 IT 직군을 따로 모집하더라구요 그래서 혹시 면접도 같은 직군들끼리 보지 않을까..하는 생각을 했는데.. 역시 맞았습니다 일단 후기를 작성해볼게요! 오전 7시에 신한은행 본점 앞에서 버스를 타고 기흥 연수원으로 이동합니다. 이동하는 동안 잠을 자는 지원자분도 계셨고, 자기소개를 계속 읽어보시는 지원자분도 계셨어요 8시쯤 기흥연수원에 도착하고 강당에 앉아서 시작하기만을 기다렸습니다 강당 뒷편엔 샌드위치, 빵, 음료, 커피등을 준비해주셔서 간단한 아침을 해결할 수 있었고 또 감동받은건.. 치약+칫솔 세트를 줍니다! 이런 세심한 배려가 참 마음에 들었어요! 8시 20분경 IT직군은 인솔하에 다른 장소로 이동했습니다. 다른 .. 2017. 11. 6.
SVM - Support Vector Machine 머신러닝의 갈래는 아래와 같이 나뉠수 있습니다. 예측모델과 군집모델도 더 자세하게 분류할 수 있지만, 이 글에서 설명할 것은 SVM이기 때문에 분류모델만 자세히 적었습니다.머신러닝 전체적 분야에 대한 설명은 다음에 정리해서 포스팅하겠습니다. 위 그림과 같이 SVM은 분류모델 중 하나입니다.분류모델은 쉽게 말해 기존의 데이터를 특징 별로 분류하는 것을 나타냅니다. 예를 들어 A,B,C 특징을 가지고 있는 데이터는 Group1 ,D,E,F 특징을 가지고 있는 데이터를 Group2라고 분류할 수 있을것입니다.이 때 새로운 데이터가 들어오면 Group1에 속하는지 Group2에 속하는지 판단할 수 있을 것이고 데이터의 특징을 보다 쉽게 파악할 수 있을 것입니다. 다시 말해 데이터를 어떻게 , 잘 분류할 것인가!.. 2017. 11. 1.
Airbnb New User Bookings - Kaggle Project(1) 본 프로젝트는 2015년에 Kaggle Competition에 올라왔던 프로젝트입니다.데이터분석을 배워보기 위해 위 프로젝트를 시작해볼 생각이고, 여러 유저가 작성해주신 Kernels도 읽어보고 많이 인용할 예정입니다. 먼저 프로젝트 소개와 데이터에 대해 소개하겠습니다. 이제 막 Airbnb에 가입한 New 사용자는 190개 이상의 국가 중 34,000개 이상의 도시의 숙소를 Airbnb를 통해 예약할 수 있습니다. 이 사용자가 어느 도시 및 국가를 처음으로 방문할 것인지 예측할 수 있다면, Airbnb는 맞춤 컨텐츠를 제공해 줄 수 있으며 첫 예약하기까지의 사용자의 시간을 줄여줄 수 있을것입니다. 본 프로젝트의 목표는 어느나라의 유저가 처음 어느곳을 예약할 지 예측하는 것입니다. 사용할 데이터는 인구통.. 2017. 10. 31.
2017 하반기 삼성전자 공채 SW 테스트 후기 저번 주말 (22일)에 삼성전자 하반기 공채 SW 테스트가 있었습니다! DS직군은 오전, CE/IM 직군은 오후에 일정이 잡혔었습니다. 저는 DS를 지원해서, 오전 8시까지 영통역에 도착해 셔틀버스를 타고 시험장인 첨단기술연수소로 향했습니다. 사람 엄청 많았어요..ㅠㅜ 사람 많으니 긴장감이 더 상승..ㅠㅠ 8시 30분에 시험관련 OT가 진행되고 9시에 시험이 시작됬습니다. 3시간 동안, 2문제를 풀어야합니다! 문제가 벌써 BOJ에 올라왔네요! 관련 링크 첨부할게요! 1번문제는 DFS를 이용하여 그룹을 나누는 완전탐색 문제, 2번은 예외처리를 조금 해야하는 구현문제입니다. 1번 문제 : https://www.acmicpc.net/problem/148892번문제 : https://www.acmicpc.net.. 2017. 10. 23.
카카오 블라인드 공채 2차시험 후기 카카오 2차 코딩테스트 문제보기 [http://tech.kakao.com/2017/10/24/kakao-blind-recruitment-round-2/] 10월 14일 바로 어제, 카카오 블라인드 테스트 2차 코딩테스트가 있었습니다. 1차 코딩테스트가 알고리즘 문제였기 때문에 2차 역시 난이도 조금 높은 알고리즘 문제가 나올거라고 생각했습니다. 그러나 시험 3일전.. 메일이 한통 왔네요. 2차에서는 REST API와 JSON Parser가 필요합니다. 여러 회사에서 코딩테스트를 진행하지만 이런 경우는 처음이라 조금 당황했습니다ㅠ 그리고 또 다른 추가안내 메일이 왔습니다. 1. 로컬 피씨에서 시스템을 구현하는 방식입니다. 따라서 코딩은 본인 컴퓨터에서 익숙한 언어와 환경으로 진행하면 됩니다. 2. 문제는 .. 2017. 10. 16.
세마포어(Semaphore)와 뮤텍스(Mutex) 여러 쓰레드들은 자원을 공유하고, 프로세스간 메시지를 전송하면서 간혹 문제가 발생할 수 있습니다. 즉, 공유된 자원에 여러 프로세스 , 쓰레드가 동시에 접근하면서 문제가 발생합니다. 공유된 자원 속 하나의 데이터는 한번에 하나의 프로세스만 접근할 수 있도록 제한해 두어야 할 필요성이 있는데이를 위해 고안된 것이 Semaphore(세마포어)입니다. 유명한 화장실 예제로 쉽게 설명해보겠습니다. 공중 화장실은 한번에 1명만 사용할 수 있다고 가정하겠습니다.어떤 사람이 사용하고 있는데 다른 누군가가 갑자기 들어와서 같이 쓰자고 하면... 생각만해도 이상하지요..?이를 막기 위해 화장실 열쇠를 만들 수 있습니다.열쇠를 가지고 있는 한 사람만 화장실을 이용하고, 열쇠가 없는 사람은 밖에서 대기를 하죠. 여기서 열쇠.. 2017. 10. 13.
메모리 관리기법, 페이징과 세그멘테이션 메모리의 용량은 한정적이므로 여러 응용 프로그램의 사용을 위해 효율적인 메모리 관리 기법이 필요합니다. 메모리 관리기법을 효율적으로 사용하여 외부 및 내부 단편화를 해결할 수 있습니다. 메모리 관리기법은 여러가지 있는데 그 중 가장 많이 쓰이는 것은 가상 메모리관리 기법입니다. 이와 관련된 페이징 , 세그멘테이션기법을 살보겠습니다. Paging(페이징) 물리메모리를 사용할 때, 페이지를 고정크기의 프레임단위로 나눕니다.논리메모리도 같은 프레임단위인 페이지로 나누어 프레임과 페이지를 대응하게 하여연속적인 물리메모리가 아니더라도 원하는 크기의 프레임을 사용할 수 있도록 하는 기능입니다. 프레임(Frame) : 물리 메모리를 일정한 크기로 나눈 블록페이지(Page) : 가상 메모리를 일정한 크기로 나눈 블록 .. 2017. 10. 9.
반응형