2017-02-20 35 views
0

thisデータセットの年齢フィールドの手段を取得しようとしています。 私はそれをきれいにしました。私はそれがで文句colMeansのエラー(adult_csv [1]、na.rm = TRUE): 'x'は数字でなければなりません

colMeans(adult_csv[1], na.rm = TRUE) 

を実行するときには:

Error in colMeans(adult_csv[1], na.rm = TRUE) : 'x' must be numeric 

私はadult_csv[1]を試してみました、それが正しく私にage機能を提供します。 xもデータがありません。

+3

'str(adult_csv [1]) 'を確認してください。あなたは一つの列で何をしているのですか?なぜあなたは 'colMeans'を必要としますか – akrun

+0

xはあなたのデータソースを参照しています。この関数はパッケージ内のcolMeans(x、...)によって定義されているので、データの代わりにデフォルトを与えます。 – sconfluentus

答えて

1

read.csvを使用している場合、年齢列に文字列があります。これは、Rが数値ではなく文字列として列全体を読み取るようにします。 hist関数が機能するためには、すべてのデータがクラス数値である必要があります。で

まず見て:

adult_csv[which(is.na(as.numeric(adult_csv[1]))), 1] 

の束があり、 "?"ヒストグラムを計算するときにRが使用できない値。これらはNA値でなければなりません。欠落しているデータのプレースホルダです。この列を数値に変換すると、Rは "?"を変換できないという警告を表示します。番号に代わりにNAを使用しますが、これはおそらくあなたのケースでは良い結果です。

用途:

adult_csv[1] <- as.numeric(adult_csv[1]) 

データをインポートしているとき、ちょうどもののこの種を探し、エラーメッセージが何を意味するかを学ぶために時間を取ります。この同じ質問に答えるスタックオーバーフローに関する他にもたくさんの質問があります。

うまくいけばうまくいきます。

+0

私は 'read.csv'を使用していますが、今は' Error:(list)object 'double' 'と入力することはできません – user5363938

+0

データのインポート方法を知らずにデバッグするのは難しいです。私はちょうど使用した: adult_csv < - read.csv( "https://courses.cs.ut.ee/MTAT.03.183/2017_spring/uploads/Main/adult.csv"、header = T、sep = "\ t "、stringsAsFactors = F) – detroyejr

+0

ただ解決されたthx – user5363938

関連する問題