2017-10-20 5 views
0

私は新しい変数(オリジナルの「クリーン」バージョン)を作成したデータフレームを持っています。データフレームをサブセット化すると、これらの新しい変数はサブセット化されたデータフレームに含まれていないように見えます。これらの新しい変数を再度作成する必要はありますか?または、サブセットされたデータフレーム内にあることを確認する方法があります。サブセット化。データフレームに新しい変数を作成/消去しました。私がサブセットしたとき、新しいデータフレームではない

もう少し詳しく:データフレーム 'x'を添付しました。

newdf <- subset (x, (income %in% c('<20000'))) 

(所得が他の変数のクリーンバージョンで、因子変数である。) ので、新しいデータフレームは所得のみが含まれている必要があり少ない20000

よりもこれが動作しているようです、とい確かに、正確な観測数で私に新しいデータフレームを与えてください。しかし

、私は私が得る

freq (newdf$income) 

をしよう:

plot.window(XLIM、YLimプロパティ、ログイン=ログ...)でエラーが発生しました: は「有限必要xlim 'の値 さらに、警告メッセージ: 1:min(wl):minに対する欠落していない引数はありません。戻り値Inf 2:最大値(w.r):maxに欠損値がない。 -Inf 3:min(x):minに欠損値がない。返すInf 4:max(x):maxに欠損していない引数はありません。返す-Inf

ありがとう!

+0

あなたには、いくつかのサンプルデータを提供することはできますか? – Wimpel

+0

'dput(head(data、20))'を使ってデータセットの例を投稿してください。サンプルコードは、このように誰もあなたを助けることは不可能です。正しく作成 –

答えて

0

table()を使用すると、サブセット化された新しいデータフレームのincomeの頻度または数を確認できます。私の知る限り、あなたのデータセットがちょうど1 newdfincome変数すなわち<20000のレベルのを持っていないし、次に何をチェックサブセットたい理解として

irisデータセット内の同じ実装newdf

の所得<20000との観測の

dim(iris) 
# [1] 150 5 

table(iris$Species) 

# setosa versicolor virginica 
#  50   50   50 


newdf <- subset(iris, Species %in% "virginica") 
dim(newdf) 
# [1] 50 5 

table(newdf$Species) 

# setosa versicolor virginica 
#  0   0   50 

他の例

df <- data.frame(a = 1:9, b = as.factor(rep(c("<100","<200", "<300"), each = 3))) 
df 
# a b 
# 1 1 <100 
# 2 2 <100 
# 3 3 <100 
# 4 4 <200 
# 5 5 <200 
# 6 6 <200 
# 7 7 <300 
# 8 8 <300 
# 9 9 <300 

table(df$b) 

# <100 <200 <300 
# 3 3 3 

newdf <- subset(df, b %in% "<300") 
newdf 
# a b 
# 7 7 <300 
# 8 8 <300 
# 9 9 <300 

table(newdf$b) 

# <100 <200 <300 
# 0 0 3 
+0

DIM(X)#originalデータフレーム > [1] 10364 1086 DIM(newdf)#NEWデータフレーム、および右寸法 > [1] 2301 1086 テーブル(newdfの$収入を有します) しかし、その後、私はこれを取得:エクステントの ><テーブル0> – Rainmaker

+0

'income'がnewdfに列名の一つとして存在するかどうか確認するか、いずれかのタイプミスかどうかを確認してください。.. –

+0

それは本質的にした変数のように思えます元のデータフレームではNEWデータフレームで問題ありませんが、作成した変数はそうではありません。 – Rainmaker

関連する問題