2017-11-15 11 views
1

低レベルのRユーザーがここにいます。R:forループでgsubを使用する

私は3つの人口データフレーム(low.proj、med.proj、high.proj)を持っていて、私はきれいに整えようとしています。

私はGSUBで、このループをしようとしているように、国の欄にフレームのすべての3つを、いくつかの余分なコンマを排除したい:

私はこれを実行すると、私は私にエラー」エラーを取得[ 、 "国"]:次元の数が正しくありません」

私はループのないコードを実行します。それは作品

low.proj$Country <- gsub(",","",low.proj[,"Country"]) 

を。このエラーの原因と解決方法

答えて

0

これではなく、行うには正しいがどうなるかを示すことによって改善することができassign

for(i in c("low.proj", "med.proj", "high.proj")){ 
    tmp <- get(i) 
    tmp$Country <- gsub(",","",tmp[,"Country"]) 
    assign(i, tmp) 
} 
+0

これはうまくいった!説明もありがとう。 – Oct

0

あなたは間違った変数のインデックスを作成している:

i$Country <- gsub(",","",i[,"Country"]) 

iは文字列なので、i$Countryはどんな意味を持っていません。

+1

を使用し、そのオブジェクトに新しいデータを入れてi使用get()に含まれる文字列でオブジェクトの内容を取得するためには、何が間違っているかを列挙するだけです。 – leeum

+0

あなたは正しいです、謝罪します。 – thc