[解決済み] 無効な '行.名' の長さ
質問
TraMineR(バージョン1.8.4)のseqdef-funcitonを使ってシーケンスオブジェクトを定義しようとしているのですが、いつもこんな意味のわからないエラーメッセージが表示されます。
Error in
row.names<-.data.frame
(
*tmp*
, value = value) :
無効な'row.names'の長さ
私のコード入力は
sample.sts <- seqdef(sample, var=c("jan2005", "feb2005", "mar2005", "apr2005", "may2005",
"jun2005", "jul2005", "aug2005", "sep2005", "oct2005", "nov2005", "dec2005"),
alphabet=c("Employee (full-time)", "Employee (part-time)",
"Self-employed (full-time)", "Self-employed (part-time)", "unemployed", "Retired",
"Student", "Other inactive", "Compulsory military service"),
states=c("EF", "EP", "SF", "SP", "UE", "RE", "ST", "IA", "MS"), id="pidc")
データフレーム "sample"は次のようになります。
pidc jan2005 feb2005 ... dec2005 sex edufirst age05
--------------------------------------------------------------------------
1. 150163920001 . . ... . 1 5 62
2. 211518110003 . . ... . 2 2 17
3. 170295160002 . . ... . 2 1 47
4. 240386550002 2 2 ... 2 2 2 50
5. 320099920001 . . ... . 1 3 38
--------------------------------------------------------------------------
6. 200167850001 . . ... . 1 5 39
7. 340401190002 6 6 ... 6 1 3 61
8. 180501260002 . . ... . 1 3 29
9. 230083560001 . . ... . 1 3 61
10. 240335270002 3 3 ... 3 2 3 30
というのが全体の出力です。
[州コードに '-' 文字を発見、推奨されません。
[シーケンスデータに欠損値('NA')があることが判明しました。
[3266配列の準備
[>] void要素を'%'で、欠損値を'*'でコーディングする。
[!] インデックス付きシーケンス。1,2,3,...
[>] 状態コーディング。
[アルファベット] [ラベル] [ロングラベル]
1 従業員(正社員) EF EF
2 従業員(パートタイム) EP EP
3 自営業者(常勤) SF SF
4 自営業(パートタイム) SP SP
5 無職 UE UE
6 退職者 RE RE
7 学生 ST ST
8 その他活動休止中 IA IA
9 強制的な兵役 MS MS
[>] データセットに含まれる3266個の配列
[最小/最大配列長:12/12
の不具合row.names<-.data.frame
(*tmp*
, value = value) :
無効な'row.names'の長さ
状態を"-"なしで再ラベル化してから再試行しましたが、エラーには影響しません。多分、誰かが私を助けることができ、このエラーの原因を知っていますか?
解決方法は?
seqdefの引数quot;id"は、1つの配列につき1つのエントリを含むベクトルでなければなりません(つまり、idベクトルの長さは配列数と同じでなければなりません)。id=as.character(sample$pid)を使ってみてください。id=sample$pid (as.character なし) を使ってみてください。
sample.sts <- seqdef(sample, var=c("jan2005", "feb2005", "mar2005", "apr2005", "may2005", "jun2005", "jul2005", "aug2005", "sep2005", "oct2005", "nov2005", "dec2005", "jan2006", "feb2006", "mar2006", "apr2006", "may2006", "jun2006", "jul2006", "aug2006", "sep2006", "oct2006", "nov2006", "dec2006", "jan2007", "feb2007", "mar2007", "apr2007", "may2007", "jun2007", "jul2007", "aug2007", "sep2007", "oct2007", "nov2007", "dec2007", "jan2008", "feb2008", "mar2008", "apr2008", "may2008", "jun2008", "jul2008", "aug2008", "sep2008", "oct2008", "nov2008", "dec2008"), alphabet=c("Employee (full-time)", "Employee (part-time)", "Self-employed (full-time)", "Self-employed (part-time)", "unemployed", "Retired", "Student", "Other inactive", "Compulsory military service"), states=c("EF", "EP", "SF", "SP", "UE", "RE", "ST", "IA", "MS"), d=as.character(sample$pid))
データ中の状態と引数のアルファベットとの間にミスマッチがあるようです("-" が "." に置き換えられたため)。alphabet引数を変更する必要があります(seqstatl関数を使って、データにどのstatesラベルが存在するかを調べてみてください)。
関連
-
[解決済み] 変数の型(リスト)が無効です
-
[解決済み】添え字付き代入でNAを使用することはできません
-
[解決済み】ggplotの線幅を変更するには?
-
[解決済み】値を置き換えようとすると、"データフレームの添え字の割り当てで欠損値は許可されない"
-
[解決済み】rbind(deparse.level, ...)でエラー:引数の列の数がRにマッチしていない
-
[解決済み】Rはプロットするが、アブラインを描画しない
-
[解決済み】エラー - replacement has [x] rows, data has [y].
-
[解決済み】行列式で「数値/複雑な行列/ベクトルの引数を必要とする」というエラーが発生する?
-
[解決済み】'NULL'型の非(リストまたはベクトル)に適用されるis.na()は何を意味するのか?
-
[解決済み】seq_alongはうまくいくが、seqが意図しない結果を生む例とは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】rbind エラー。"名前が以前の名前と一致しない"
-
[解決済み】値を置き換えようとすると、"データフレームの添え字の割り当てで欠損値は許可されない"
-
[解決済み】「次のオブジェクトは 'package:xxx' からマスクされています」とはどういう意味ですか?
-
[解決済み】Rでの関数の最適化(L-BFGS-Bでは'fn'に有限の値が必要)。
-
[解決済み】ロジスティック回帰 - eval(family$initialize) : y 値は 0 <= y <= 1 である必要があります。
-
[解決済み】Rでデータフレームのサブセットをプロットする方法は?
-
[解決済み】Rで結果の行数がベクトル長(arg 2)の倍数でない件
-
[解決済み】ggplot2でのプロット:「Error: カテゴリ軸のY軸に "Discrete value supplied to continuous scale "と表示される。
-
[解決済み】行列式で「数値/複雑な行列/ベクトルの引数を必要とする」というエラーが発生する?
-
[解決済み】dplyr: "Error in n(): 関数は直接呼ばれるべきではありません"