2017-05-18 8 views
1

OECDのファイルには、地域の細分性が異なる多数のファイルがあります。例は次のようになります。文字列が存在しない場合は、別の文字列を探します。

ファイル

REG_ID Region 
AUS Australia 
AU1GS Sydney 
AU1 New South Wales 
AU2 Victoria 
AU2GM Melbourne 

ファイルB

REG_ID Region 
AUS Australia 
AU1GS Sydney 
AU2GM Melbourne 

この場合、私が最も細かい領域を抽出したいファイルC

REG_ID Region 
AUS Australia 
AU1 New South Wales 
AU1GS Sydney 
AU2 Victoria 

、シドニーのみニューサウスウェールズ州ではない。しかし、シドニーが利用できない場合、私はニューサウスウェールズ州を抽出したい。

これらのファイルに一般化できるコードを書くにはどうすればよいですか?

答えて

0

こんにちは私は、これはあなたが、あなたが探している正確に何であるかどうかわからないですが、多分あなたはbuildingblockとしてそれを使用することができます。

fileA <- c("Australia", "Sydney", "New South Wales", "Victoria", "Melbourne") 
fileB <- c("Australia", "Sydney", "Melbourne") 
fileC <- c("Australia", "New South Wales", "Sydney", "Victoria") 
fileD <- c("Australia", "New South Wales", "Victoria") 

あなたは、ベクターが含まれているかどうかをチェックするためにgreplを使用することができます与えられた文字列。あなたがこれに取得することができ ifelse 合計とCombinded:

ifelse(sum(grepl("Sydney", fileA)), "Sydney", "New South Wales") 
[1] "Sydney" 
ifelse(sum(grepl("Sydney", fileB)), "Sydney", "New South Wales") 
[1] "Sydney" 
ifelse(sum(grepl("Sydney", fileC)), "Sydney", "New South Wales") 
[1] "Sydney" 
ifelse(sum(grepl("Sydney", fileD)), "Sydney", "New South Wales") 
[1] "New South Wales" 
関連する問題