최근에 화일 이름을 날짜순(화일을 변경한 날짜 순)으로 바꿀 필요가 있었다. 예를 들면 Hello.txt와 Goodbye.txt가 변경 날짜가 1월 1일, 12월 31일이라면 01_Hello.txt와 02_Goodbye.txt로 바꾸는 것이다. WD는 폴더의 이름, ext는 확장자의 이름이며, 번호의 자리수(01 또는 001)는 22번줄의 # space required for numbering에 3을 원하는 숫자로 바꿔서 변경할 수 있다. Recently I came across the situation where I had to change the filename by date(modification date). For example if I modified the file "Hello.txt" in ..
인간이 받아들이는 시각 자극은 기본적으로 2차원이다. 하지만 아주 자연스럽게 3차원의 심상을 구성해낸다.Human's visual perception is basically 2-dimensional. But human can very easily construct 3-dimensional images. 하지만 숫자로 이루어진 표를 그린다면, 3차원의 표를 그리거나 하지는 않는다.But when we need tables with numbers in it, we construct 2-dimensional table. 하지만 자료는 3차원 이상의 배열로 저장하는 것이 자연스러울 때가 많다.But sometimes, data are naturally multidimensional. We store them i..
물리학자들은 세상에 11차원일지 모른다는 가설을 심각하게 고민하고 있다고 한다.I watched a documentary on and physicists are studying a theory which says the world is 11 dimensional. 세상이 빅뱅으로 출발하였던, 원래 그 자리에 영원토록 있었던 상관없는 바와 마찬가지로 나와 별 상관이 없어 보인다.But it seems so unrelated to me like whether the world was created by Big Bang or the world has been as it is since forever. 그래도 11차원이라고 하니 놀랍기는 하다.However, 11 dimensional world is quite..
최근에 R에서 sum(a*b)를 해야 하는 상황에 직면했다. 문제는 a와 b가 매우 크거나 작은 수라는 것!Recently, I came across the situation in which I had to sum(a*b) in R. The problem was that a and b are vectors of very large or small numbers. 다음의 R implementation은 log a b = log c b/log c a라는 것을 안다면 쉽게 이해할 수 있을 것이다.The implementation of log-sum-exp below must be easily understandable if you know log a b = log c b/log c a # log-sum-exp..
매우 작은 양수(0과 가까운 수)나 매우 큰 수를 나타내는 한 가지 방법은 log를 활용하는 것이다. 이 때 두 수의 곱셈은 자명하다.Very small or large numbers can be easily stored in computers by taking logs. And mutiplying two numbers expressed in log-scale is straight-forward. 하지만 덧셈은 약간의 trick(소위 말해 log-sum-exp trick)이 필요하다.But the addition of two extreme numbers need some trick(so called, log-sum-exp trick). 두 큰 수 exp(800)과 exp(900)을 더하고자 한다. 문제는..
수학자의 무한히 정확한 세계에서는 underflow 따위는 없지만, 컴퓨터에는 있다.In the world of Mathematics where infinite precision is guaranteed, there's no room for Underflow, but computers has it. 최근에 IRT 모형의 일종인 GRM 모형의 log Likelihood 최대화를 하는 과정에서 underflow의 의한 심각한 문제가 발생했다.I recently programmed a routine to maximize the log likelihood of GRM, which is one kind of IRT models and found some problems related to UNDERFLOW! 다음..
R에서 응답자료를 gpcm 모형으로 분석하고자 할 때 ltm 또는 gpcm 패키지를 쓸 수 있다.You can use the package or to fit your data to gpcm. 두 패키지의 가장 큰 차이점은 모수를 다른 방식으로 사용한다는 점이다.The difference between two functions, gpcm and ltm is that they use different parameterization. 이제 두 함수 ltm::gpcm과 mirt::mirt를 통해 주어진 자료를 gpcm에 적합시키자.Now, let's see how we can fit the data to gpcm via and . library("mirt")library("ltm") apply(R.gpcm, 2..
Polychoric, tetrachoric, polyserial, and biserial correlation는 정규 분포를 띄는 잠재변수를 가정합니다.Polychoric, tetrachoric, polyserial, and biserial correlations assume latent variables which are normally distributed. 그리고 잠재변수가 0/1 또는 0/1/2/3/.../n 등의 이분/ordinal 변수로 관찰될 때, 잠재변수 간의 상관계수를 구합니다.And when the observations are either 0/1 or ordinal which is manifestation of continuous latent variables, polychoric, ..
http://stackoverflow.com/questions/7019912/using-the-rjava-package-on-win7-64-bit-with-r JAVA_HOME 환경 변수 때문에 생기는 경향? jvm.dll이 있는 폴더 예) C:\Program Files\Java\jdk1.6.0_25\jre\bin\server 또는 C:\Program Files\Java\jre6\jre\bin\client 를 PATH에 포함시킨다. 내 컴퓨터 -(우클릭)- 속성 - 좌: 고급시스템설정 - (고급 탭 아래) 환경설정