Skip to contents

ウェイト算出のためのシミュレーションを実行する

Usage

simWeight(
  lSURVEY,
  sSAMPLING = c("with_replace", "without_replace", "fixed"),
  nBLOCKSIZE = 100,
  nNUMBLOCK = 1,
  bPARALLEL = FALSE,
  sLOGFILE = NULL,
  sDBPATH = NULL,
  sDBTABLE_CAT = "weight_cat",
  sDBTABLE_SLOT = "weight_slot",
  bAPPEND = FALSE,
  sVERBOSE = c("simple", "detail", "none")
)

Arguments

lSURVEY

`surveydata`クラスのオブジェクト。 調査データ。makeSurveyで生成する。

sSAMPLING

a string. 抽出方法。以下のいずれか。

  • with_replace: 割付試行によって調査対象者を生成し、再割付試行では 調査対象者から復元無作為抽出する

  • without_replace: 割付試行によって調査対象者を生成し、再割付試行では 調査対象者から非復元無作為抽出する(調査参加順序を入れ替える)

  • fixed: 割付試行によって調査対象者を生成し、再割付試行では それらの調査対象者を同じ調査参加順序で再割付する

nBLOCKSIZE

整数。 ブロック内の再割付試行数。

nNUMBLOCK

整数。 実行する再割付試行のブロック数。

bPARALLEL

論理値。 並列処理するか。

sLOGFILE

文字列。 並列処理する場合のログファイル(フルパス)。NULLだとログを出さない。

sDBPATH

文字列。 シミュレーションの結果を保存するSQLite DBのフルパス。 存在しない場合は作成する。

sDBTABLE_CAT

文字列。 再割付シミュレーションの結果得られたカテゴリ割付頻度を保存するSQLite DBのテーブル名。

sDBTABLE_SLOT

文字列。 再割付シミュレーションの結果得られたスロット割付頻度を保存するSQLite DBのテーブル名。

bAPPEND

論理値。 結果をテーブルに TRUE: 追加する, FALSE: 上書きする。

sVERBOSE

文字列。 画面表示レベル。

Value

  • sDBPATHを指定しない場合は、シミュレーションの結果をデータフレームのリストとして返す。

  • sDBPATHを指定した場合はNULLを返す。シミュレーションの結果は、 SQLiteデータベースにテーブルとして保存される。sDBPATH が存在する場合は、 bAPPEND==FALSEであればSDBPATHに上書きし、bAPPEND==TRUEであれば追加する。 sDBPATHが存在しない場合は新規作成する。

シミュレーションの結果は次の2つのデータフレームからなる。

dfStat_Cat: カテゴリ割付頻度。行は調査対象者x割付カテゴリを表す。 列は以下のとおり(順不同):

  • nBlock: ブロック番号

  • nBlockSize: ブロックサイズ(ブロック内の再割付試行数)

  • nSubject: 調査対象者番号

  • nCat: カテゴリ番号

  • nNumRetrial: ブロック内の再割付試行のうち、調査対象者が1回以上出現した試行の数

  • gSumProp:   ブロック内の再割付試行のうち、調査対象者が1回以上出現した試行を通じた、割付率の合計

  • gSumSqProp: ブロック内の再割付試行のうち、調査対象者が1回以上出現した試行を通じた、割付率の二乗の合計

dfStat_Slot: スロット割付頻度。行は調査対象者x割付スロットを表す。 列は以下のとおり(順不同):

  • nBlock: ブロック番号

  • nBlockSize: ブロックサイズ(ブロック内の再割付試行数)

  • nSubject: 調査対象者番号

  • nParentCat: スロットが属するカテゴリ番号

  • nSlot: スロット番号

  • nNumRetrial: ブロック内の再割付試行のうち、調査対象者が1回以上出現した試行の数

  • gSumProp:   ブロック内の再割付試行のうち、調査対象者が1回以上出現した試行を通じた、割付率の合計

  • gSumSqProp: ブロック内の再割付試行のうち、調査対象者が1回以上出現した試行を通じた、割付率の二乗の合計

Details

bAPPEND==TRUEで、sDBPATHが存在するがテーブルsDBTABLE_CAT, sDBTABLE_SLOTが存在しない場合はエラーとなる。