Определите, является ли в двух строках заголовок или нет - PullRequest
0 голосов
/ 20 декабря 2018

Я пытаюсь выполнить задачу, довольно простую для человека: определить, является ли первая из двух строк строкой заголовка.Вот пример входных данных:

Example1: да

name,age
bob,12

Example2: да

first,last
bob,jones

Example3: нет

1,2
8,hi

Example4: нет

bob,jones
tom,smith

Я немного растерялся, с чего начать делать обоснованное предположение здесь.Это не обязательно должно быть идеально (80% было бы хорошо), но что может быть хорошим алгоритмом сокращения для определения вышесказанного?Некоторые вещи, о которых я думал:

# header is usually always strings (wrong in case 4)
for val in header:

    is val.replace(',','').replace('.','').replace('-','').isdigit():
        header = False
    else:
        header = True

Ответы [ 2 ]

0 голосов
/ 24 декабря 2018

Кажется, что слова являются нарицательными в вашем заголовке данных.Вы можете использовать некоторую платформу NLP, такую ​​как TextBlob , чтобы выполнить POS (часть речи) работу по распознаванию слова, если оно является существительным или именем человека.

0 голосов
/ 20 декабря 2018

Один из подходов - иметь предварительно заданный список ключевых слов для поиска в вашей строке;такие как ['name', 'age', 'first', 'last'].Конечно, это должно быть в дополнение к вашей проверке цифр.
Если у вас есть одно или несколько совпадений, тогда назовите его заголовком.

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