2015-12-07 2 views
-2

У меня есть два текстовых файла Файл 1Сохранять одинаковые имена для двух текстовых файлов?

File1=read.table("C:\\file1.txt", sep="") 
Value name 
    0.2 sam 
    0.4 david 
    3 david 
    7 nicola 

Файл 2

File2=read.table("C:\\file2.txt", sep="") 
Value name 
    0.8 nicola 
    0.9 david 

Хранить только те строки, в которых существуют имена в обоих файлах. Так, например, желаемые результаты:

Файл 1

Value name 
    7 nicola 

Файл 2

Value name 
    0.8 nicola 

Обратите внимание, что Dived был удален в моей желаемый результат, потому что у меня есть 2 Давида в файле 1 и 1 David в файле 2. сэм был удален, потому что мы не имеем его в file2

+0

Я знаю, что ваш код является лишь примером; тем не менее: ** никогда ** не используйте абсолютные пути в своих сценариях. Полученный код полностью не переносимый, и это действительно огромная проблема в коде реального слова. –

+2

Вы можете получить оба значения одновременно простым слиянием, таким как 'merge (File1, File2, by =" name ")' –

ответ

2

мы можем использовать %in%

df1[df1$name %in% df2$name,] 
# Value name 
#2 0.4 david 
df2[df2$name %in% df1$name,] 
# Value name 
#2 0.9 david 
+0

@temor Тогда вы должны были показать это в примере. Мы не можем догадаться, что находится в вашем исходном файле. – akrun

+0

@temor На основе нового обновления вопрос не кажется дублирующим. Но, поскольку он уже помечен как обман, вы можете опубликовать это как новый вопрос. – akrun

+0

@temor Я ответил на вопрос, который вы разместили. Поэтому мне не нужно удалять ответ. Если это не вопрос, который у вас есть, вы должны опубликовать новый вопрос. – akrun

Смежные вопросы