Monday, April 2, 2012

GlassFish3 入門 (2) -- 以non-root的權限執行服務

為了避免執行GlassFish服務的使用者具有太大的權限,例如前文的root,因此我們可以建立一個較低權限的使用者來啟動服務。

  • 首先建立一個群組glassfish3,並且新增一個使用者glassfish,此使用者沒有home directory。
sudo groupadd glassfish3
sudo useradd -s /bin/bash -M -g glassfish3 glassfish

  •  將/opt/glassfish3的所有權轉給glassfish。

sudo chown -Rf glassfish.glassfish3 /opt/glassfish3
  •  修改/etc/init.d/GlassFish_test,讓它可以用glassfish的權限啟動服務。

    Sunday, April 1, 2012

    GlassFish3 入門 (1) -- 初始設定

    為了專案開發需要,採用了glassfish3當成是Web Service的容器。為免以後忘記如何將服務架起來,只好記錄下來囉!

    本文使用的是glassfish3 open source edition - 3.1.2,可在此下載。主機採用CentOS 5搭配JDK 6u31的執行環境。

    • 先將JDK以及glassfish3解壓縮在/opt底下。(JAVA_HOME請自行設定,在此不詳述)
    •  設定基礎環境(編輯/opt/glassfish3/glassfish/config/asenv.conf),加入以下兩行指令,指定預設之Java Home及glassfish3安裝路徑,可避免自動啟動服務時發生錯誤。
    AS_JAVA="/opt/jdk1.6.0_27"
    AS_HOME="/opt/glassfish3/glassfish"

    •  進入/opt/glassfish3/bin裡,輸入sh asadmin,可以進入管理畫面。
    1.  可先將預設domain1刪除(delete-domain domain1)
    2.  建立自己的domain(create-domain test),按下Enter即可自動設定(預設沒有密碼)。

    •  設定開機自動啟動服務。
    1. 進入管理介面後,輸入create-service [instance]指令,此處的instance指的是domain名稱。
    2. 指令成功執行後,會自動將啟動指令檔複製到/etc/inid.d/以及/etc/rcN.d底下(此處的N為0-6及S)。
    3. 此內建的指令檔會自動在重開機後啟動服務,但先決條件是重開機之前要先啟動服務。



    Tuesday, June 28, 2011

    獨立樣本雙因子變異數分析(One-way ANOVA)

    本例子是以林清山教授的書為例(心理學教育統計學,P.371,Ex16-1),資料檔在此。

    • 先讀入資料檔。
    ex<-read.table("ex16_1.csv",header=T,sep=",")
    • 進行獨立樣本二因子變異數分析。
    aovex<-aov(score~type*class,data=ex)
    • 列出分析結果。
    summary(aovex)

    • 由ANOVA表可得知有交互作用(interaction)存在,因此必須再去探討單純主要效果(simple main effects)。
    • 先將各資料分組(先以b因子分組;亦即是探討同在同樣的a因子之下會對不同的b因子造成什麼顯響。)
    ex.b1<-subset(ex,class=="b1")
    ex.b2<-subset(ex,class=="b2")
    ex.b3<-subset(ex,class=="b3") 
    • 之後分別進行單因子變異數分析。
    summary(aov(score~type,data=ex.b1))
    summary(aov(score~type,data=ex.b2))
    summary(aov(score~type,data=ex.b3))

    Monday, June 27, 2011

    問卷調查分析實務(二)-->雙因子變異數分析之資料轉換與組合

    該位朋友所探討之研究問題,其中一項是要探討性別在依變數(分成三向度)的差異情形,從其研究問題可以得知性別是一個因子;而向度又是另一個因子,因此必須以雙因子變異數分析來進行統計檢定,同時因為受試者(填問卷者)又同時要填寫三向度的題項,所以是愛試者間等組實驗設計(within subject balanced design)。

    在進行two way anova之前,必須把資料進行處理(one row per subject轉成one row per observation),也就是說每一行(row)的資料僅包含三個欄位(性別,向度,分數),以下將逐一介紹處理過程。
    • 首先計算各向度的總分,向度一(X101-X110);向度二(X201-X220);向度三(X301-X317)。
    先將原始資料question依性別及向度處理成三個變數(data frame),分別是d1,d2,d3,每個變數中包含性別以及該向度的所有題項。
     d1<-question[,c(1:2,9:18)
    d2<-question[,c(1:2,19:38)]
    d3<-question[,c(1:2,39:55)]
    接下來將各向度的各題項加總並放入變數q1,q2,q3之中,各變數只包含三個欄位:性別,向度以及總分。
    q1<-data.frame(subject=d1$subject,sex=d1$sex,dimension=1,score=rowSums(d1[,-1]))
    q2<-data.frame(subject=d2$subject,sex=d2$sex,dimension=2,score=rowSums(d2[,-1]))
    q3<-data.frame(subject=d3$subject,sex=d3$sex,dimension=3,score=rowSums(d3[,-1]))
    •  最後將這三個變數結合成一個適合進行ANOVA的data frame。
    sex<-rbind(q1,q2,q3)

    問卷調查分析實務(一)-->資料操作

    日前朋友來問問卷調查之統計分析方式,因此筆者以Project R實際進行一次分析,並分享於此網誌(其實是怕忘記 = =")。原始資料已經用試算表軟體處理過,並另存成csv檔,檔名是question.csv。
    PS.此系列文章僅示範資料處理及操作,不涉及結果解檡。
    •  資料檔下載。
    • 開啟Project R並且設定好工作路徑至question.csv之資料夾。
    • 載入資料檔至變數question之中(因為資料檔中的第一列為各變項的名稱,因此設定header=T)。
     question<-read.table("question.csv",sep=",",header=T)
    •  因為資料檔包含了7個自變項以及47個依變項(問卷總題數,分成三個向度,分別是10,20,17題),所以若要計算各個依變項的平均值以及標準差,必須將自變項去除掉。
    dep<-qestion[,-(1:8)]
    •  描述統計值
    summary(dep)
    write.table(summary(dep),"summary.csv",sep=",",col.names=NA)
    •  計算標準差,並寫入檔案sd.csv中
    sd(dep)
    write.table(sd(dep),"sd.csv",sep=",",col.names=NA)

    下篇文章將會進行雙因子變數數分析之實作。