🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

Q&A

1回答

1226閲覧

Rで、アイテム数が0のはずがないのに「Read 0 items」と出てしまいます

Keita222

総合スコア8

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

R

R言語は、「S言語」をオープンソースとして実装なおした、統計解析向けのプログラミング言語です。 計算がとても速くグラフィックも充実しているため、数値計算に向いています。 文法的には、統計解析部分はS言語を参考にしており、データ処理部分はSchemeの影響を受けています。 世界中の専門家が開発に関わり、日々新しい手法やアルゴリズムが追加されています。

0グッド

0クリップ

投稿2019/12/21 09:56

編集2019/12/21 11:10

前提・実現したいこと

Rで、ある推定をしたいのですが、「Read 0 items」というエラーが出てしまいます。
もちろん見ての通り0のはずはないのですが…。
調べても分からないのですが、これはどういったことが原因なのでしょうか?

発生している問題・エラーメッセージ

該当のソースコード

> library(irtoys) > u <- read.csv("2018ALLdatasetAVGsituation.csv",header=FALSE,stringsAsFactors=F) > head(u) V1 V2 V3 V4 1 Norunner 2outr1base 0outor1outr1base 2 lindf001 0.2926267281105991 0.07692307692307693 0.28846153846153844 3 kipnj001 0.20666666666666667 0.32 0.3076923076923077 4 ramij003 0.25165562913907286 0.23529411764705882 0.3434343434343434 5 cozaz001 0.24427480916030533 0.3 0.2962962962962963 6 troum001 0.3108108108108108 0.29411764705882354 0.3181818181818182 V5 V6 V7 1 0outor1outr2base 2outr2base 2outr1and2base 2 0.22727272727272727 0.16666666666666666 0.21052631578947367 3 0.2 0.23076923076923078 0.3333333333333333 4 0.08333333333333333 0.3333333333333333 0.375 5 0.375 0.0 0.07692307692307693 6 0.3888888888888889 0.36363636363636365 0.1 V8 V9 V10 1 2outr2and3baseor3base 0outor1outr1and3base 0outor1outr1and2base 2 0.3333333333333333 0.6 0.47619047619047616 3 0.3333333333333333 0.6 0.3333333333333333 4 0.45454545454545453 0.5833333333333334 0.4074074074074074 5 0.0 0.0 0.0 6 0.0 0.5 0.3157894736842105 V11 V12 V13 V14 1 2outrfullbase 0outor1outrfullbase NA 0outor1outr2and3baseor3base 2 0.0 0.0 0.0 0.3 3 0.0 0.16666666666666666 0.0 0.2222222222222222 4 0.16666666666666666 0.5 1.0 0.3333333333333333 5 0.0 1.0 6 1.0 0.6666666666666666 0.5 1.0 V15 1 2outr1and3base 2 0.5714285714285714 3 0.4 4 0.14285714285714285 5 0.0 6 0.0 > dim(u) [1] 972 15 > u1 <- data.frame(lapply(u[-1,-1], as.numeric)) > u2 <- na.omit(u1) > head(u2) V2 V3 V4 V5 V6 V7 V8 1 0.2926267 0.07692308 0.2884615 0.22727273 0.1666667 0.2105263 0.3333333 2 0.2066667 0.32000000 0.3076923 0.20000000 0.2307692 0.3333333 0.3333333 3 0.2516556 0.23529412 0.3434343 0.08333333 0.3333333 0.3750000 0.4545455 5 0.3108108 0.29411765 0.3181818 0.38888889 0.3636364 0.1000000 0.0000000 6 0.2405063 0.19148936 0.2777778 0.31578947 0.3333333 0.2413793 0.4285714 7 0.2142857 0.18750000 0.4406780 0.42857143 0.1764706 0.2777778 0.2857143 V9 V10 V11 V12 V13 V14 V15 1 0.6000000 0.4761905 0.0000000 0.0000000 0.0 0.3000000 0.57142857 2 0.6000000 0.3333333 0.0000000 0.1666667 0.0 0.2222222 0.40000000 3 0.5833333 0.4074074 0.1666667 0.5000000 1.0 0.3333333 0.14285714 5 0.5000000 0.3157895 1.0000000 0.6666667 0.5 1.0000000 0.00000000 6 1.0000000 0.3103448 0.0000000 0.7500000 0.0 0.0000000 0.20000000 7 0.5000000 0.2903226 0.2500000 0.3333333 0.0 0.4285714 0.08333333 > dim(u2) [1] 234 14 > ip <- est(resp=u2,model="2PL",engine="icl", + a.prior=FALSE,b.prior=FALSE,c.prior=FALSE, + run.name="vocab_2PL") Read 0 items > u2.mle <- mlebme(resp=u2,ip=ip$est,method="ML") mlebme(resp = u2, ip = ip$est, method = "ML") でエラー: responses - item parameters mismatch ・整数だけのデータフレームを作った場合 > library(irtoys) > abc <- c(1,1,1,1,1) > def <- c(0,1,0,0,1) > (u2 <- data.frame(ABC=abc, DEF=def)) ABC DEF 1 1 0 2 1 1 3 1 0 4 1 0 5 1 1 > dim(u2) [1] 5 2 > ip <- est(resp=u2,model="2PL",engine="icl", + a.prior=FALSE,b.prior=FALSE,c.prior=FALSE, + run.name="vocab_2PL") Read 0 items > u2.mle <- mlebme(resp=u2,ip=ip$est,method="ML")

試したこと

数値が小数であることが問題なのではと疑い、自分で0と1のみの整数で構成されたデータフレームを作りましたが、同じような状況になりました…。

補足情報(FW/ツールのバージョンなど)

Rのバージョンは3.5.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

使用している関数estの説明(https://www.rdocumentation.org/packages/irtoys/versions/0.2.1/topics/est)によると引数は「0と1から構成されたmatrix」とあります。
一方で解析したいデータはdataframeになっていますので、以下のようにmatrixに変換したらできないですか?

as.matrix(u2) #u2の列ラベルは除去した方がいいかもしれない

投稿2019/12/24 00:39

ade-san

総合スコア15

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Keita222

2019/12/24 02:26

変わらなかったですね…。
ade-san

2019/12/24 23:32

一応どのように変換したか見せていただけますか?
Keita222

2019/12/26 07:00 編集

> library(irtoys) > abc <- c(1,1,1,1,1) > def <- c(0,1,0,0,1) > (u2 <- data.frame(ABC=abc, DEF=def)) ABC DEF 1 1 0 2 1 1 3 1 0 4 1 0 5 1 1 > dim(u2) [1] 5 2 > as.matrix(u2) > ip <- est(resp=u2,model="2PL",engine="icl", + a.prior=FALSE,b.prior=FALSE,c.prior=FALSE, + run.name="vocab_2PL") Read 0 items > u2.mle <- mlebme(resp=u2,ip=ip$est,method="ML") このような感じです。
KojiDoi

2019/12/26 07:47

as.matrix(u2) これだけでは変換が次のプロセスに反映されませんよ。
Keita222

2019/12/26 09:23

どう変えれば良いですか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問