분류 전체보기
R 프로그래밍 - R 편집기 R Editors (WinEDT, Tinn-R)
2014. 9. 6.1. 내장형RGui 는 스크립트 윈도우라는 내장된 편집기를 가지고 있다. Syntax highlighting 기능이 없는 등 제한적인 기능을 가지고 있다. Syntax highlighting 은 기능에 따라 코드의 색깔이 달라지는 것을 말한다(예를 들면 주석은 녹색으로 반복문은 빨간색과 같은 식으로 말이다). 게다가 최근의 편집기는 혼란을 줄여주고자 명령문을 자동으로 닫는 기능을 가지고 있다. 따라서 아래에서 언급하는 툴 중 하나를 다운로드 받아 사용하기를 권한다. 2. 기타 R 편집기각광받는 R 편집기로는 WinEDT 가 있습니다. WinEDT 는 상용프로그램입니다.WinEDT 다운로드 http://www.winedt.com 추천할만한 또다른 편집기에는 Tinn-R 이 있습니다. Tinn-R 은 무료프..
R 프로그래밍 - 좋은 R 코드를 작성하기 위한 팁 Tips for Writing Good R Code
2014. 9. 6.1. General1) 코드에 코멘트 달기 - "#" 을 이용하여 아래와 같이 코멘트를 달 수 있다. > load("~/myfirstRobjects.rdata", ex ls.str(ex) # 코멘트 달기 savevector1 : int [1:9] 1 2 3 4 5 6 7 8 9 savevector2 : chr "Yay!" > "#"의 왼편에 위치한 코드만 실행된다.코멘트가 중요한 이유는 여러분이 잊어버리지 않기 위해서도 중요하지만 여러분의 코드를 쓰는 다른 이들을 위해서도 중요하다는 점은 두말할 나위가 없다. 2) 하드 코드를 쓰지 말 것예를 들어, 설사 길이가 변하지 않는다고 하더라도 벡터의 길이와 같은 하드 코드를 쓰지말고 length() 와 같은 함수를 이용해라.아래 예제에서 2번 코드가 더 훌륭한..
오라클 잡 스케줄링 dbms_job.submit
2014. 9. 5.dbms_job.submit 을 통해 일정 간격이나 특정 시간대에 프로시져를 실행할 수 있다. 1. 현재 돌아가고 있는 잡을 확인합니다. SELECT * FROM DBA_JOBS; 2. 다음과 같이 Job 을 등록할 수 있습니다. 1) 코드 예시 DECLARE X NUMBER; BEGIN SYS.DBMS_JOB.SUBMIT ( X Job 넘버 (식별자) ,'SMIS.proc_daily_stat_ins;' 주기적으로 실행할 프로시져 또는 패키지이름 ,to_date('05-09-2014 13:08:00','dd/mm/yyyy hh24:mi:ss') 다음 번 Job 수행시간 ,'SYSDATE + 30/1440' Job 수행 주기 ,TRUE ); SYS.DBMS_OUTPUT.PUT_LINE('Job Number..
리눅스Linux 시간 수동 설정 (date, hwclock)
2014. 9. 5.1. 시간 확인 하드웨어상 시간과 소프트웨어(Operating System)상의 시간으로 구분할 수 있다. OS 시간은 하드웨어 시간에 종속됨(OS가 재부팅할 때마다 하드웨어상의 시간을 가져옴) 1) 하드웨어 시간 확인 [root@server ~]# hwclock -r Fri Sep 5 11:04:22 2014 -0.038974 seconds 2) 소프트웨어 시간 확인 [root@server ~]# date Fri Sep 5 10:51:58 KST 2014 보다시피 상당히 차이가 난다. 2. 시간 변경 1) 먼저 국가별 현재 시간 확인 http://phone.chol.com/intro/nation_time.htm 2) 시간 수동으로 변경 [root@server ~]# date -s "2014-09-05..
'케이트 모스 Kate Moss'의 가슴을 본뜬 샴페인 글라스
2014. 8. 30.생명의 가슴에 축복의 샴페인을! 낭만 넘치는 케이트 모스의 가슴을 본뜬 샴페인 글라스! 와인이 그리스도의 피라면, 황금빛 샴페인은 축복의 상징! 런던의 레스토랑 「34」는 영국 모델 케이트 모스(Kate Moss)와 함께 그녀의 왼쪽 가슴을 본뜬 샴페인용 컵글래스를 발표했다. 샴페인은 17 세기의 왕후 귀족이나 나폴레옹을 사로 잡았는데, 원래 컵글라스도 마리 앙투아네트 또는 퐁파두르 부인 또는 나폴레옹의 아내 조세핀 등의 가슴을 본떴다는 이야기가 전해지고 있다. 케이트 모스의 가슴과 정말 비슷한지는 각각의 판단에 맡겨두기로... http://japan.digitaldj-network.com/articles/31802.html
R 프로그래밍 - Functions (Custom)
2014. 8. 30.이번에는 R 에 내장된 함수가 아닌 사용자가 사용을 위해 만든 커스토마이징된 함수를 활용하는 방법에 대한 것이다. 커스토마이징된 함수를 이용하기 위해서는 콘솔과 스크립트창을 모두 사용할 수 있지만, 스크립트창을 이용하는게 좀 더 편리하다. 스크립트창은 File > New script 를 이용해서 띄운다. 아래의 예제를 해당 창에 넣어보자. doubledip doubledip(5,-2) [1] 1.778279 > 주의해야할 점은 plot() 이나 c() 처럼 내장된 함수의 이름으로 저장해서는 안된다는 것이다. 내장된 함수의 이름과 동일한지를 확인하기 위해서는 간단히 콘솔창에서 이름을 쳐보면 된다. 또 하나 주의해야할 점은 커스톰 함수를 사용한 후 워크스페이스를 저장하지 않는다면 해당 함수를 사용하기 위해 ..
R 프로그래밍 - Functions (Built in)
2014. 8. 29.내장함수 1. 도움말 보기 1) 해당 함수를 타이핑하면 R 콘솔상에서 해당 함수가 입력값을 어떻게 처리하는지를 간단하게 보여준다. > plot 2) 내장된 도움말 기능을 이용하기 위해서는 해당 함수 앞에 ? 를 붙여 타이핑하면 된다. > ?plotplot() 함수를 어떻게 사용해야하는지에 대한 상세한 설명이 포함된 도움말 파일이 로딩된다. 2. 유용한 함수들함수명기능예제결과값abs()절대값 표시abs(-1)[1] 1sqrt()양의 제곱근 표시sqrt(c(2,4))[1] 1.414214 2.000000source()해당 파일의 스크립트 실행source("nameofmyscript.r")콘솔상에서 스크립트 명령 실행됨seq()수열생성 seq(시작값,끝값, 반복주기)seq(0, 8 ,2)[1] 0 2 4 6 ..
R 프로그래밍 - Types of Output / Exporting Data
2014. 8. 29.1. Types of Output Types of InputTypes of Output delineated files(.csv) delineated files R object (.rdata) R object (.rdata) graphical output (.pdf, .jpg, .png, .bmp, .tiff) 2. How to export data write.csv() : .csv 형태로 저장하기 위한 함수(사용되는 파라메터는 read.csv() 와 동일함) 예를 들어보면, > printvector1 = 1:10 > write.csv(printvector1, file="myfirstoutput.csv") // 데이터, 파일네임순 > getwd()[1] "C:/Users/fukaeri/Documents" ..
"의료 붕괴"의 권장 - 병원이 없는 것이 사망률을 낮춘다! (유바리시에서 실제로 일어난 의료 붕괴)
2014. 8. 16.유바리시(夕張市)에서 실제로 일어난 의료 붕괴 시의 재정 파탄에 의해 시립 병원이 없어졌다. 고령화율 45 % 비참한 현실이 기다리고 있을 것이라고 생각했지만 결과는 정반대였다. 사망률, 의료비, 구급차 이송 횟수 모두가 하락했다. 유바리시립병원 원장을 지낸 모리타 히로유키씨의 TEDx 강연내용을 정리해보았습니다. 유바라시는 홋카이도의 한가운데 있는 도시로 재정파탄을 겪었고 고령화율이 45 %로 일본 최고(일본 전체로 봤을 때 25 % 이므로 거의 두 배)이다. 1. 유바리시의 상황 1) 시내에 171석을 보유한 종합 병원이 하나 있었지만, 재정 파탄으로 인해 운영 중단 2) 현재 19석의 작은 진료소만 하나 있음(CT, MRI 한 대도 없음) 3) 구급 병원 없어짐. 구급차 도착 시간이 2배가 되었..
R 프로그래밍 - Plotting Data : Additions
2014. 8. 16.이번에는 기존 그래프에 선과 점을 추가하는 방법을 알아봅니다. 먼저 예제로 사용할 그래프를 하나 만든다 > plotvector3 = 1:9 > plotvector4 = c(1, 3, 6, 2, 7, 5, 5, 3, 1) > plot(plotvector3, plotvector4) 1. 선 그리기 점사이를 이을 때는 lines() 함수를 이용한다. > lines(plotvector3, plotvector4) 수직선이나 수평선을 긋고 싶을 때는 abline() 함수를 이용한다. > abline(coef = c(1, 1), v = 3, h = 5) coef : (절편, 기울기) 특정 v : x축 좌표와 교차하는 수직선 h : y축 좌표와 교차하는 수평선 2. 점 넣기 아래와 같이 point() 함수..
R 프로그래밍 - Plotting Data : Box Plots
2014. 8. 16.Box Plots은 이상치(outlier)를 비롯하여 4분위를 이용해 값들의 분포 양상을 보여준다. 생성은 boxplot() 명령어로 한다. > par(cex = .6) > boxplot(proteinconc) cex : 좌표내 텍스트의 크기 값 설정하는 옵션 전체를 4등분하여 박스 아랫값은 25% 지점을, 가운데 진한 검정라인은 50% 지점을, 그리고 박스 상단은 75% 지점을 나타낸다. 그리고 IQR(Interquartile Range) = Upper Quartile - Lower Quartile 를 나타낸다. Whiskers는 Lower Quartile - 이상치를 제외한 최소값 또는 이상치를 제외한 최대값 - Upper Quartile 를 나타낸다. Outliers(이상치, 극단치) 는 그림에서 ..
R 프로그래밍 - Plotting Data : Histograms
2014. 8. 14.R에서 히스토그램을 만들때는 hist() 명령어를 이용한다. > hist(proteinconc[,1], main = colnames(proteinconc)[1], xlab ="Concentration") plot() 명령어에서 쓸 수 있는 파라메터의 대부분은 hist() 에서도 활용가능하다. 위에서 보듯이 "main", colnames(), "xlab" 과 같이 말이다. 하지만 hist() 자체가 가지고 있는 특별한 파라메터들도 있다. 다음을 보자. > par(mfrow=c(1,2), cex=.75) > hist(proteinconc[,1], breaks = 50) > hist(proteinconc[,1], breaks = c(0, .5, .7, .8, .9, 1)) 파라메터 "breaks"를 두 가..
R 프로그래밍 - Plotting Data (좌표로 나타내기) : Dot plot(점도표)
2014. 8. 9.Dot plot(점도표)은 plot() 함수를 통해서 호출되는데, 같은 길이의 두 개의 벡터를 처리하고 좌표로 나타낸다. 첫 번째 벡터는 x축에, 두 번재 벡터는 y축에 대응된다. > plotvector1 = 1:9 > plot(plotvector1, plotvector1) 위의 명령을 실행하면 새로운 창이 뜨면서 도표가 표시되는데 이 창은 plotting window 이고 좌표가 표시되는 창이다. 만약 아래와 같이 새로운 명령을 실행하면 이전의 도표는 없어지고 새로운 도표로 대체된다. > plotvector2 = 9:1 > plot(plotvector1,plotvector2) 새로운 도표창을 여는 명령어는 다음과 같다. 아래 명령어를 실행하면 기존 창 옆에 R Graphics: Device 3 (ACT..
R 프로그래밍 - Reading in Data
2014. 8. 9.그럼 예제 파일을 가지고 시작해보자. R 프로그램의 working directory 는 다음의 명령어로 확인가능하다. > getwd() [1] "C:/Users/fukaeri/Documents" 작업 디렉토리 변경은 다음과 같이 한다. setwd() 명령어로는 새폴더를 생성할 수는 없다. 그러므로 해당 폴더가 없는 경우라면 먼저 폴더를 생성한 후 작업 디렉토리로 지정해야 한다. > setwd(C:/Users/myusername/Documents/My Other R Stuff) 본 예제에 필요한 파일을 아래 링크에서 다운로드한 후 다음과 같이 입력한다. http://sites.google.com/site/undergraduateguidetor/manual-files > proteinconc = read.c..
일련의 정확한 전략적 단계들이란 존재하지 않는다.
2014. 8. 9.만약 어린 학생이 처음에 등장하는 몇몇 난관을 뛰어넘고, 그 주제와 관련된 독특한 표기들을 극복하면서, 내용들의 단순 암기가 아닌 그 속에 담긴 아이디어들의 ‘이해’가 학습의 진전을 이루어내는 방법이라는 사실을 깨달을 수 있다면, 그 보다 약간 둔한 학생이 이등변 삼각형의 성질에 막혀 꼼짝 못하는 동안, 그 전까지는 존재하지 않았던 난해하면서도 혁신적인 생각들을 향하여 신나게 여행할 수 있다. 학교에서 갈루아는 주의가 산만한 학생이었고, 그는 이러한 성격을 평생 고치지 못했다. 그는 ‘풀이과정을 쓰지 않고’, 머릿속에서 문제를 풀어냈기 때문에 교사들을 당혹스럽게 했다. 풀이 과정에 대한 수학 교사들의 집착은 오늘날 다수의 재능있는 어린 학생들을 괴롭히고 있다. 갓 자라나기 시작한 어린 축구 선수가 경기에..
AICPA 시험 시간 관리 팁 (Gleim Time Management for Business and Regulation)
2014. 8. 6.시험의 성패를 좌우하는 또 다른 요소, 시간 관리입니다. CBT 체제로 시험이 바뀌면서 모니터를 통해 현재 남은 시간을 확인할 수는 있지만 예전 PBT 체제하에서처럼 뒤에서부터 문제를 푼다든가, 아니면 헷갈리는 문제들을 앞뒤로 넘겨가면서 손쉽게 확인할 수는 없게 되었습니다. 이제 해당 테스트렛을 벗어나면 다시 돌아올 수는 없기 때문이죠. 어쨌든 이런 상황에 적응을 하긴 해야 하는데. 이에 대한 실질적인 조언이 없는 것 현실입니다. AICPA 사이트에서도 이에 대한 팁을 찾아볼 수는 없구요. 마침 Gleim 사이트(https://www.gleim.com/accounting/cpa/forum/index.php?cat=3)이에 대한 게시물이 올라와 있어 소개해 드립니다. BEC 와 REG 에 대해 소개하고 있..
R 프로그래밍 - Data Types (Converting/Using)
2014. 8. 2.아래와 같은 방법으로 데이터 타입을 변경할 수 있다. > matrix4=as.matrix(c(1,2,3))> matrix4 [,1][1,] 1[2,] 2[3,] 3> class(matrix4)[1] "matrix"> vector7=as.numeric(matrix4)> vector7[1] 1 2 3> class(vector7)[1] "numeric"> 변환이 필요한 이유는 특정 함수는 특정 데이터 타입을 필요로 하기 때문이다.
R 프로그래밍 - Data Types (logical, vector, matrix, array, data.frame, list)
2014. 8. 2.1. logical True/False 값(Boolean values)을 포함하는 logical 클래스에 대해 알아보자. > logical1 = c(T,F,F)> logical1[1] TRUE FALSE FALSE> class(logical1)[1] "logical" 2. vector 데이터 타입으로서의 vector 는 수학의 벡터와는 다르게 정의된다. vector 타입은 일견 기존의 numeric, character, logical 과 중복된 것처럼 보일 수 있지만, vector 타입의 장점은 numeric, character, logical 모두를 포함할 수 있다는 것이다. > vector1 = vector(mode="logical",3)> vector1[1] FALSE FALSE FALSE 특정..
R 프로그래밍 - Data Types (numeric, integer, character)
2014. 8. 2.1. numeric 수를 입력하는 경우 기본적으로 numeric 으로 저장된다. > calc1 = 1 + 1> calc1[1] 2 변수의 데이터 타입을 알고자하는 경우 아래 class() 함수를 이용한다.> class(calc1)[1] "numeric" > numbers1 = c(1, 2, 3)> numbers1[1] 1 2 3> class(numbers1)[1] "numeric" 위의 예를 보면 하나의 수가 아니므로 벡터가 아닌가라는 생각이 들 것이다. 여기서 트릭은 c() 함수는 값들을 연결해주는 concatenate 함수이라는 점에 있다. 각각의 값이 numeric 이므로 그 값들을 결합한 1 2 3 역시 numeric 이다. 2. integer > numbers2 = 1:3> numbers2[1..
에릭 라르센, 「최고가 되라」 - 폭발하는 감정만이 삶을 변화시킨다
2014. 7. 24.저자가 밝히는 이 책을 쓴 3가지 이유는 다음과 같다. 첫째, 자의식을 높이고 사고방식을 개선하도록 돕는 것 둘째, 실행능력에 해가 되는 사고의 특정 패턴을 바꾸도록 돕는 것 셋째, 저자가 '좋은 기분'이라고 부르는 것들을 더 많이 경험하도록 돕는 것 이 책의 주제는 더 나아지는 것이다. 당신은 당신이 생각하는 것보다 더 많은 걸 해낼 수 있다! 진정으로 원하면 당신은 할 수 있다! 당신이 일아야 할 건 단 하나, 당신이 원하는 게 무엇이냐다! 0 멘탈트레이닝은 감정을 폭발시키는 기술이다 앤서니 라빈스의 강연이 끝나고 저자는 용기를 내 무대 뒤로 가서 그와의 면담을 요청했다. 경호원들이 따라 밖으로 나오기 전 그에게 질문을 던졌다. 그의 대답은 지금 내가 고객들에게 하는 것과 같았다. 난 이렇게 물었다...
바바라 트베르스키 Barbara Tversky - 그림에 반영된 인지력의 근원 Cognitive Origins of Graphic production
2014. 7. 18.바바라 트베르스키 Barbara Tversky 의 은 여러 문화권의 어린 아이들이 지도나 그림을 그릴 때 공통적으로 나타나는 방향성을 분석한 일종의 보고서이다. 이 보고서에 따르면 여러 개의 숫자들을 크기순으로 나열하거나 시간의 흐름을 그림으로 표현할 때, 영어문화권의 아이들은 왼쪽에서 오른쪽으로, 또는 아래에서 위로 그려나간다. 반면 아랍어문화권의 아이들은 이와 정반대로 오른쪽에서 왼쪽으로 그려 나가지만, 수직방향으로는 아래에서 위로 그려 나가는 습성을 보인다. 즉, 영어권이건 아랍어권이건 간에, 어떤 양의 증가를 나타낼 때 위에서 아래로 그리지는 않는다. 수평방향으로는 문화권에 따라 방향성이 다르게 나타나는 반면, 수직방향으로는 문화권에 관계없이 분명한 방향성을 보인다. 마크 존슨 Mark Johns..
츠츠이 야스타카, 「인구조절구역」- 어처구니없는 주제, 그러나 궁금해지는 결말
2014. 7. 18.이 책의 저자 츠츠이 야스타카는 「시간을 달리는 소녀」의 저자이기도 하다. 다소 충격적인 제목과 일러스트, 내용 역시 상상을 초월한다. 저자 본인 역시 이 작품이 가져올 충격과 파장을 고려해 이 소설을 쓰기 위해 70대 노인이 될때까지 기다렸다고 한다. 이 작품에서 일본 정부는 '폭발적으로 증대한 노인 인구를 조절하고, 파산 직전의 국민연금제도를 유지하며, 동시에 저출산 추세를 상대적으로 해소하겠다'는 대의 명문 아래 '노인상호처형제도', 일명 '실버 배틀'이라 불리는 제도를 도입한다. 지정된 지구 내의 70세 이상의 노인들끼리 30일 동안 서로 죽이도록 해서, 살아남은 한 사람에게만 천수를 다할 수 잇는 권리를 부여하는 제도이다. 반면 기간내에 두 사람 이상이 남게되면 전원이 후생노동성 직속의 중앙인구..
마크 패시오(Mark Passio) - 자연의 법칙(Natural Law Expressions)
2014. 7. 17.윤앤리 퍼블리싱에서 번역해놓은 마크 패시오의 자연의 법칙 유투브 영상을 보고 정리해보았습니다. 윤앤리 퍼블리싱 블로그: http://yoonandlee.wordpress.com/ 윤앤리 퍼블리싱 유튜브 채널: http://www.youtube.com/user/yoonandlee 그리고 얼마전에 카페도 만들었답니다. http://cafe.naver.com/ynl 그리고 윤앤리의 첫 책은 여기서 보실 수 있어요.http://book.naver.com/bookdb/book_detail.nhn?bid=7650489 1. 자연의 법칙 자연의 법칙은 5단계의 단계별 표현방식(자연의 법칙이 우리의 삶에 작용하는 방식)으로 구성되며 각각의 단계는 [긍정/부정]으로 구분되어 총 10개의 표현방식이 존재..
노리나 허츠, 「누가 내 생각을 움직이는가」- 방금 그 선택은 과연 당신의 '생각'인가?
2014. 7. 17.방금 그 선택은 과연 당신의 '생각'인가? 제1장 똑똑한 생각, 그리고 멍청한 결정 데이터 홍수의 긍정적인 측면 정보를 가공, 편집, 검열되지 않은 원래 상태로 얻을 수 있다는 점이다. 이제 우리는 전통적인 게이트키퍼(뉴스나 정보의 유출을 통제하는 사람)의 개입을 거치지 않고도 출처에서 직접 정보를 얻을 수 있다. 이는 우리가 결정을 내릴 때 커다란 기회를 제공하지만, 과연 이 수많은 데이터 중에서 무엇을 믿어야 할까라는 과제를 남긴다. 제2장 보지 못한 것과 보지 않으려 한 것 제3장 우리 주위의 ‘선택 설계자’들 기준점 오류 : 시작이 다르면 결과도 달라진다 제공받은 기준점에 준해 판단을 내리는 것을 '기준점 오류(anchoring)'라고 한다. 예를 들어 사람들에게 주민등록번호 마지막 두 자리로 구..
R 프로그래밍 - Manipulation
2014. 7. 16.1. 콤마의 의미 > matrix1 [,1] [,2] [,3] [1,] 1 4 7 [2,] 2 5 8 [3,] 3 6 9 > 1) [] 속 콤마의 의미 [1,] 숫자 뒤에 오는 콤마는 행 전체를 의미함 [,1] 숫자 앞에 오는 콤마는 열 전체를 의미함 이는 행렬의 요소를 정의할 때 행 넘버를 적고 열 넘버를 적는다는 일반적인 관습에 근거한다. > matrix1[1, 3] [1] 7 > matrix1[ 2, ] [1] 2 5 8 그리고 그 결과는 벡터의 형식으로 나타나게 됨 2) 열을 변경하는 명령어(제거되는 것은 아님) 두 번째 열을 변경하기 위해서는 다음의 명령어를 사용하면 된다. > matrix1[,-2] [ ,1 ] [ ,2 ] [ 1, ] 1 7 [ 2, ] 2 8 [ 3, ] 3 9 2. 데이터..
호리에 타카후미, 「배금」- 사람에게 순종하게 된 동물은 개 같은 모습을 띠게 된다
2014. 7. 15.딱히 이 책을 사려고 했던 것은 아니다(결론적으로는 잘 샀다고 생각한다). 여느날과 같이 볼만한 책이 있을까하고 퇴근길에 서점에 들렀다. 시간이 많지 않아 일단 직진 문구 코너쪽으로 가서 아이들 장난감 좀 보다가 2층으로 - 여긴 반디앤루니스 센트럴시티점이다 - 수학 코너에서 신간이 있나 보고, 직진 후 좌회전 경제, 경영 코너 들러서 인문, 철학 코너 보고 다시 1층으로. 쭉가서 하루키와 히가시노 게이고 진열장 한 번 보고, 일본 소설 진열대로.... 그 진열대는 오래 진열된 상태의 책들이 많다는 것이 단점... 깨끗하지 않아 사고 싶은 마음이 뚝 떨어진다. 보다보니 손길은 「시간을 달리는 소녀」(이 책도 먼지가 묻어서 한 권 갖고 있게 인터넷으로 살 예정) 에게로, 그 책의 저자인 쓰쓰이 야스타카의 ..
행렬의 곱(matrix multiplication)
2014. 7. 12.1. 행렬의 곱은 일명 "Dot Proudct"라고 불리는 방법을 통해 매칭되는 수끼리 곱한 뒤 합하여 구한다. 아래 첫번째 예에서 보듯이 행렬 A 의 첫번째 행과 행렬 B의 첫번째 열이 교차하는 지점 (1,1) 의 값을 구할려면 (1, 4, 7) • (1, 2, 3) = 1×1 + 4×2 + 7×3 = 30 즉, 첫번째 멤버인 1 과 7 을 곱하고, 마찬가지로 두번째 멤버인 2 와 9 를 곱한다. 마지막으로 세번쩨 멤버인 3과 11을 곱한 뒤 전부 합하면 30 이라는 값을 얻을 수 있다. 2. 나머지 칸도 위와 같은 방법으로 구하면 된다. 첫번째 행렬의 열의 갯수와 두번째 행렬의 행의 갯수가 같은 경우에만 두 행렬을 곱할 수 있다. 그리고 그 결과는 첫번째 행렬의 행의 갯수와 두 번째 행렬의 열의 갯수..
R 프로그래밍 - Matrices(행렬)
2014. 7. 11.1) 왼쪽에서 오른쪽으로, 그리고 위에서 아래로 인덱싱된다. 2) (nrow) 는 행의 갯수를 특정하고, (ncol) 은 열의 갯수를 특정한다. 3) 입력된 값의 수(예제에서는 9개)보다 많은 원소(예제에서는 10개)를 가지는 행렬을 만들려고 하면, 아래와 같은 경고 메시지를 출력한다. data length [9] is not a sub-multiple or multiple of the number of rows [2] 모자라는 1칸에는 첫번째 값이 1이 삽입된다. 행렬이 채워질 때까지 반복적으로 값이 들어가게 된다. 앞에서도 보았듯이 결과값 앞에 [1] 이 출력되는 것을 보아왔다. [1] 은 행렬의 한 열 또는 한 행과 동등이다. 위 그림의 첫번째 예는 1+1 에 대한 답인 2 라는 한 개의 원소를 가..
R 프로그래밍 - 벡터(Vector)
2014. 7. 11.1) 벡터는 아래 화면에서 보듯이 연속된 수일 수도 있고, 임의의 수일 수도 있다. 2) 포함할 수 있는 수의 갯수에는 제한이 없다. ":" (콜론 연산자)는 아럐 예에서 보듯이 1:9 즉, 1에서부터 1씩 증가하여 9(또는 9 직전의 수)가 될 때까지라는 의미다. >vector1=1:9 >vector1 [1] 1 2 3 4 5 6 7 8 9 3) 그리고 벡터를 만드는 다른 방법에는 c() 함수를 이용하는 방법이 있다. c() 안에 원하는 수를 넣으면 된다. 4) 벡터의 덧셈 연산은 사이즈가 같은 경우 각각의 위치에 있는 값끼리 더하면 된다. 5) 사이즈가 다른 경우 큰 사이즈가 작은 사이즈의 배수인 경우 반복하여 더한다. 사이즈가 배수가 아닌 경우 다음과 같은 에러 메시지를 출력한다. longer ob..
R 프로그램의 역사, 다운로드 및 설치, 대수(algebra)
2014. 7. 11.1. R의 역사 R 프로그램은 뉴질랜드 오클랜드 대학의 Ross Ihaka 와 Robert Gentleman 에 의해 개발되었습니다. R 에 대한 좀 더 알고 싶으시면 아래 링크를 참조하세요. http://www.r-project.org/ http://en.wikipedia.org/wiki/R_(programming_language) 2. 다운로드 및 설치 가까운 미러 사이트(http://cran.r-project.org/mirrors.html) 다운로드 한 후 설치하시면 됩니다. 3. 대수(Algebra) 1) 산술 연산자 적용이 가능하다. + (addition, 더하기) - (subtraction, 빼기) / (division, 나누기) * (multiplication, 곱하기) ^ (raise to..