написание сравнения файлов в пандах - PullRequest
1 голос
/ 23 сентября 2019

Я сравниваю столбцы в 2 файлах и записываю результат в третий файл, если значение в файле 1 col1 == значение в файле2 col2.Вместо этого я хочу использовать панд.

Мой код:

f1 = open( 'f1.txt', 'r')
f2 = open( 'f2.txt', 'r')
f3 = open( 'f3.txt', 'w+')
for row1 in f1:
    f1_row = row1.strip('\n').split(' ')
    for row2 in f2:
        f2_row = row2.strip('\n').split(' ')
        if f1_row[0] == f2_row[0]
            f3.write('\t'.join(f2_row)
    f2.seek(0,0)
f1.close()
f2.close()
f3.close()

Примеры файлов и результатов

file 1
     1 3 5 6
     3 8 9 0
     4 5 7 1
     2 6 7 9

file 2
 0 5 6 7 9 9 1
 3 4 5 6 7 7 4
 2 8 7 9 3 2 0
 1 0 3 3 4 6 7
 7 8 3 9 1 1 2

result
 1 0 3 3 4 6 7
 3 4 5 6 7 7 4
 2 8 7 9 3 2 0

Как мне сгенерировать это в пандах?Спасибо

1 Ответ

1 голос
/ 23 сентября 2019

В pandas

df1=pd.read_csv('file1.csv')
df2=pd.read_csv('file2.csv')

result=df1[[1]].merge(df2,how='inner')
Out[236]: 
   1  2  3  4  5  6  7
0  1  0  3  3  4  6  7
1  3  4  5  6  7  7  4
2  2  8  7  9  3  2  0


result.to_csv('fil3.csv')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...