Проверка правописания названий города?

Вы можете использовать Представление знаний & amp; Доступ к функциям , таким как Entity и EntityValue . Все результаты соответствуют версии 11.3.

Сначала запросите все объекты, у которых есть "phys" в названии, как в «физическом» или «физическом».

Select[StringContainsQ["phys", IgnoreCase -> True]]@EntityValue[]
{"FamousPhysicsProblem", "PhysicalConstant", "PhysicalSystem"}
blockquote>

Возвращает три типа сущностей, где "PhysicalConstant" является лучшей ставкой. Свойства, доступные для этих объектов:

Все можно вернуть с помощью

EntityValue["PhysicalConstant", "Name"]

Для конкретного объекта для гравитации Земли.

EntityProperties["PhysicalConstant"]
{"AbbreviationCode", "AlternateNames", "ASCIIDescription", "Classes", 
 "ConjecturedValues", "Description", "EqualMagnitudeConstants", 
 "EquivalentForms", "ExternalLink", "LevyLeblondClass", "Name", 
 "PrimarySource", "Quantity", "SeriesExpansionValues", 
 "StandardUncertainty", "StandardYear", "Value", "Values", "Variants", 
 "VariantTable"}
blockquote>

Свойство "Classes" выглядит полезным.

DeleteDuplicates@Flatten@Join@EntityValue["PhysicalConstant", "Classes"]
{"Acceleration", "Cosmological", "Atomic", "CODATA", "Mass", 
"Particle", "Spectral", "Astronomical", "Distance", "IAU", "Radius", 
"Chemical", "Thermal", "Electric", "Dimensionless", "Exact", "Force", 
"Frequency", "Magnetic", "Momentum", "Pressure", "Temperature", 
"Time", "Speed", "WolframLegacyPackage", "Thermodynamic", 
"AstronomicalAlmanac", "MassRatio", "CGPM", "Quantum", 
"Gravitational", "Natural", "ForceRatio", "Coupling", "Radiation", 
"Energy", "SolidState", "Length", "Area", "Volume", 
"ParticleDataGroup", "Angle"}
blockquote>

"Acceleration" кажется лучшей ставкой.

a = EntityClass["PhysicalConstant", {"Classes" -> "Acceleration"}]
EntityValue[a, "EntityCount"]
3
blockquote>
EntityList[a]
{"AccelerationAssociatedWithCosmologicalExpansionRate", "MONDConstant", "StandardAccelerationOfGravity"}
blockquote>

Теперь объект можно выбрать с помощью

grav = Entity["PhysicalConstant", "StandardAccelerationOfGravity"]

, затем

[ 1112]
Quantity[196133/20000, "Meters"/"Seconds"^2]
blockquote>
grav["ExternalLink"]

http://physics.nist.gov/cgi-bin/cuu/Value?gn

Надеюсь, это поможет.

6
задан Esteban Araya 5 November 2008 в 03:30
поделиться

6 ответов

Необходимо ли на самом деле исправить орфографические ошибки или просто отметить ли их как с помощью нормальной программы проверки правописания? Если последний, просто необходимо получить список корректных написаний и удостовериться, что каждое имя совпадает с один в списке.

Если Вы хотите на самом деле исправить их, Вы, вероятно, хотите использовать понятие расстояния редактирования для сравнения подобия строк с орфографической ошибкой тем, которые в списке ссылок. Затем можно заменить слово с ошибками самым близким соответствием. Можно также хотеть обработать возможность, что намеченный город не находится в списке.

Статья Wikipedia расстояния Левенштейна является другим хорошим ресурсом.

7
ответ дан 16 December 2019 в 21:47
поделиться

Сначала загрузите корректные названия города в массив, затем цикл через названия города в Вашем файле. Проверьте, написано ли текущее название города правильно путем наблюдения, находится ли это в массиве корректных имен. Если это не находится в массиве, попытайтесь сравнить значение Soundex или Metaphone слова с ошибками со словами в массиве корректных имен для нахождения корректного способа записать его.

3
ответ дан 16 December 2019 в 21:47
поделиться

Прием знает, к какому городу имя на самом деле относится и как то название города правильно записывается. Это не то же как просто проверка английских слов.

Какова реальная задача, которую Вы пытаетесь решить? Вы обрабатываете списки адресов? Вы не должны писать свои собственные инструменты для который: существует вся промышленность, посвященная этой обманчиво простой задаче.:)

Я должен сделать это для подписных листов для Обзора Perl. Я стал довольно знакомым с веб-сервисами для различных почтовых отделений во всем мире. Можно часто переходить к веб-сайту почтовой службы для получения канонической формы обращения. Там геокодируют инструменты, которые могут получить Вас те же данные.

2
ответ дан 16 December 2019 в 21:47
поделиться

Если то же название города происходит несколько раз в файле, можно использовать количество возникновения каждого названия города и отметить то, которое появляется только однажды.

-3
ответ дан 16 December 2019 в 21:47
поделиться

Существуют списки в сети обычно названий города с орфографической ошибкой (как Питтсбург). Кроме этого я с Jeremy. Просто необходимо найти набор данных названий города, Вы могли бы хотеть попробовать USGS. Zillow имеет данные района, Вы смогли использовать это.

-1
ответ дан 16 December 2019 в 21:47
поделиться

Я сделал это. Дистанционный подход к редактированию - это то, что я сделал, и он работает довольно хорошо, но слишком медленно, чтобы делать это в реальном времени.

Одна из проблем, с которой вы столкнетесь, состоит в том, что есть несколько городов, которые находятся на расстоянии 1 редактирования от других городов. Вы не сказали, откуда пришли названия в текстовом файле, и это имеет большое значение. Когда в моем случае это были случайные люди, которые печатали названия городов для поиска, и они иногда неправильно писали город, который они хотели, но их неправильное написание было настоящим названием города. В этом случае вы должны сделать некоторые предположения о намерениях пользователей, и один простой способ сделать это - рассмотреть государство, если оно предоставлено.

.
0
ответ дан 16 December 2019 в 21:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: