본문 바로가기

분류 전체보기

[Effective Java] private 생성자나 enum 타입을 사용해서 싱글톤의 특성을 유지하자 이번에 정리하고자하는 내용은 챕터 2의 3항목인 "private 생성자나 enum 타입을 사용해서 싱글톤의 특성을 유지하자"이다. 블로그 작성 목적은 복습과 이 책을 다 읽고자하는 다짐으로 시작한다. 1. 싱글톤 디자인 패턴 중 가장 간단하면서도 자주 사용하는 패턴 중 하나이며 하나의 인스턴스만 생성되는 클래스이다. 2. 싱글톤 사용방법 나는 이책에서 예로 설명하는 싱글톤 패턴 중 static 팩토리 메소드 패턴을 자주 사용하고 있으며 이책에서는 세가지의 싱글톤 패턴 방법을 소개하고 있다. 가. public final 필드를 갖는 싱글톤 public class Y2kpooh { public static final Y2kpooh INSTANCE = new Y2kpooh(); private Y2kpooh().. 더보기
R 데이터프레임(DF) grep & gsub 이번에는 grep함수와 gsub함수 기능에 대해서 알아보자grep은 해당 조건에 대한 검색으로 데이터프레임에서 like 검색 시 사용할 수 있으며gsub은 문자열 치환 replace기능과 같다. 우선 샘플 데이터프레임을 생성하자model.df 더보기
R evel함수활용 : String Source Code Execute R에서 eval함수를 활용하여 문자열 소스 코드를 실행하는 방법을 알아보자. R에서도 javascript의 eval함수와 동일한 기능을 제공하는 eval함수가 존재한다.이 함수가 필요한 이유는 몇가지 있을 수 있겠지만 나는 아래와 같은 이유로 해당 함수를 사용하게 되었다. 회귀분석을 진행하던 중 여러변수를 가지고 regression할 필요가 생겼다.lm(PRICE ~ VALUE1, data = df)lm(PRICE ~ VALUE1 + VALUE2, data = df).... 반복 .... 그래서 처음에는 아래와 같이 시도를 하였다.var 더보기
R 데이터프레임(DF) Select Column Distinct R에서 lm(linear regression)와 같은 분석을 할 경우 해당 데이터프레임 종속변수(관측변수)를 제외한 값이 모두 동일할 경우가 있다. 이와 같은 데이터프레임을 체크 확인하는 방법을 알아보자. 우선 샘플 데이터프레임을 생성하자model.df levels(as.factor(rowMeans(model.df))) [1] "998951.2" "1208963.6" "1315293.2"> length(levels(as.factor(rowMeans(model.df)))) [1] 3결국 해당 데이터프레임의 반복되는 값의 level갯수는 3건 이상이다. 여기서 문제는 분석할 대상의 종속변수 PRICE가 포함되어 있음이다.PRICE값을 제외할 필요가 있다.그렇다면 위 코드를 아래와 같이 수정할 필요가 있다.r.. 더보기
R 데이터프레임(DF) Select Column R에서 lm(linear regression)와 같은 분석을 할 경우 해당 데이터프레임에서 제외할 컬럼이 있을 수 있다.만약 컬럼내의 값이 모두 같으면 분석 대상에서 제외해야 한다.제외하지 않고 lm분석을 할 경우 에러를 발생시킨다. 분석할 데이터프레임에서 분석 대상이 되는 컬럼만 선택하거나 분석 대상에서 제외되는 컬럼을 제거하는 방법을 알아 보자. 우선 샘플 데이터프레임을 생성하자model.df 더보기
[Effective Java] 생성자의 매개변수가 많을 때는 빌더(builder)를 고려하자 이번에 정리하고자하는 내용은 챕터 2의 2항목인 "생성자의 매개변수가 많을 때는 빌더(builder)를 고려하자"이다. 블로그 작성 목적은 복습과 이 책을 다 읽고자하는 다짐으로 시작한다. 1. 생성자와 Static 팩토리 메소드의 제약 매개변수가 많아질 경우 해당 클래스의 객체를 생성하려면 신축성 있게 처리하지 못한다. 2. 해결방법 가. 텔리스코핑 생성자 패턴 고전적인 방법으로 텔리스코핑 생성자(telescoping constructor) 패턴이 있다. 생성자를 오버로딩하여 사용하는 방법으로 코드로 표현해보면 아래와 같다. public class Rects { private final int width; private final int height; private final int margin; pr.. 더보기
R 데이터프레임(DF) Group By Sum R에서 데이터프레임을 Group by Sum하는 방법이다. 우선 샘플 데이터프레임을 생성하자data 더보기
[Effective Java] 생성자 대신 static 팩토리(factory) 메소드 사용을 고려하자 Effective Java를 구매하여 매일 한 항목씩 읽으리라 다짐하며 공부하기 시작하였다. 항목은 총 78항목(2판 기준)으로 큰 챕터는 아래와 같다. 1. 개요 2. 객체의 생성과 소멸 3. 모든 객체에 공통적인 메소드 4. 클래스와 인터페이스 5. 제네릭 6. 열거형과 주석 7. 메소드 8. 프로그래밍 일반 9. 예외 10. 동시성 11. 직렬화 이번에 정리하고자하는 내용은 챕터 2의 1항목인 "생성자 대신 static 팩토리(factory) 메소드 사용을 고려하자"이다. 블로그 작성 목적은 복습과 이 책을 다 읽고자하는 다짐으로 시작한다. 생성자 객체 기반의 프로그래밍을 하다보면 객체를 생성하여야 한다. 객체를 생성한다를 다른 표현으로 인스턴스를 생성한다라고 하며 해당 클래스의 객체를 생성하기 위.. 더보기
R 데이터프레임(DF) 조건 검색 R에서 데이터프레임을 조건 검색하는 방법이다. 우선 샘플 데이터프레임을 생성하자data 더보기
Eclipse Tomcat 추가 시 Server Name blank 현상 Eclipse에서 Tomcat을 추가하려는데 아래와 같이 Server Name 입력 란에 키 입력이 되지 않는 현상이 발생하였다. 검색해보니 Eclipse 설정 파일을 몇개 삭제 해주면 문제해결 가능하더라. 1. 우선 Eclipse 을 종료한다.2. Eclipse Workspace 아래의 설정폴더 내의 2개의 파일을 삭제한다. - {Workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings 폴더 내 org.eclipse.wst.server.core.prefs org.eclipse.jst.server.tomcat.core.prefs3. 삭제 후 Eclipse를 재시작하면 정상적으로 Tomcat을 추가 가능하다. 참고자료 더보기