2016-08-05 8 views
0

なぜデータフレーム値が互いに一致しないのか分かりません。 私はこのようになりますDF名のファイルアップロード(COLSが正しく整列されている)があります。2つのデータフレーム値が一致しない

Destination City Year Adults 
Amsterdam 2015 2 
Amsterdam 2016 2 
Amsterdam 2015 2 
Amsterdam 2016 2 
Amsterdam 2015 3 

各都市名の後のスペースがあります。

私はこのように、アップロードされていない別のデータフレームがあります。

cities <- read.csv(text = " 
     City,Lat,Long,Pop 
     Amsterdam ,4.8952,52.3702,779808 
     Bali ,115.1889,-8.4095,4225000") 

を私は2つのデータフレームをマージする必要がありますが、私は、市内の値が(NA)が一致していない返すことに気づきました。私はそれをチェックしようとしましたfileUpload %in% cities返すfalse

私は街の後のスペースを削除してみましたが、また動作しませんでした。 typeof(df$city)は両方とも整数です。

どのように都市名を一致させることができますか?

+2

'str(fileUpload)'をチェックして、あなたの目的地が一つの要因であると確信しています。そうであれば、 'stringsAsFactors = FALSE'を読み込んだり、' as.character() 'で文字列に変換してください。 'cities'と同じです。 –

+0

再現可能な例を追加してください。 – mkt

答えて

0

コメントで指摘したように、列を要因から文字列に変換する必要があります。あなたはすべての都市または単に一つの形のXまたはYまたはその両方に存在する唯一の都市を維持するかどうかを指定するallパラメータを設定し

mergedCities <- merge(fileUpload, cities, by.x ="Destination City", by.y = "City", all = TRUE) 

関連する問題