2016-01-27 20 views
6

Tôi đang lên kế hoạch thực hiện một số điều chỉnh dữ liệu trên dữ liệu của mình.Làm cách nào để dự đoán tên quốc gia chính xác cho tên quốc gia do người dùng cung cấp?

Trường hợp -Tôi có dữ liệu có trường country. Nó chứa tên quốc gia đầu vào của người dùng (Nó có thể chứa lỗi chính tả hoặc tên quốc gia khác nhau cho cùng một quốc gia như Hoa Kỳ/Hoa Kỳ/Hoa Kỳ cho Hoa Kỳ). Tôi có một danh sách tên quốc gia chính xác.

Điều tôi muốn - Để dự đoán quốc gia nào gần nhất mà nó đang đề cập đến. Ví dụ: Nếu U.S. được cung cấp thì nó sẽ đổi thành USA (tên quốc gia chính xác trong danh sách của chúng tôi).

Có cách nào tôi có thể làm điều đó bằng cách sử dụng Java hoặc opennlp hoặc bất kỳ phương pháp nào khác không?

Trả lời

3

Bạn có thể sử dụng Getty API. Nó sẽ cung cấp cho bạn tên viết tắt của tên quốc gia. Chỉ cần chơi trên API này.

HOẶC

Bạn cũng có thể sử dụng Levenshtein Distance để lấy tên quốc gia gần nhất.

Hãy dùng thử. Sẽ giúp bạn.

+0

Levenshtein Khoảng cách hữu ích !! Nhưng vấn đề là, đối với đất nước như 'USA', nếu dữ liệu có' Hoa Kỳ' thì khoảng cách sẽ đến nhiều hơn những gì cần phải làm !! – AngryLeo

+0

@AyushBanka: Lúc đó, bạn có thể sử dụng API mà tôi đã thêm vào câu trả lời. [Git code] (https://gist.github.com/maephisto/9228207) có thể giúp bạn. Bạn có thể thêm vào của bạn. – iNikkz

0

Bạn có thể thử tự động điền vị trí tự động của Google vào hộp văn bản của bạn hoặc chọn. nếu bạn sẽ sử dụng api này thì bạn sẽ nhận được google như tự động hoàn toàn intellisence trong khi gõ. visit link

+0

Tôi muốn thực hiện điều chỉnh dữ liệu trong back-end với dữ liệu tôi có. Tôi không chắc liệu auto Complete có hữu ích hay không. Đúng nếu tôi sai – AngryLeo

0

Nếu bạn có thông tin về thành phố hoặc tiểu bang được vệ sinh thì bạn có thể tra cứu quốc gia.

Bạn cũng có thể xác định bí danh trong danh sách tên quốc gia và trỏ bí danh đến ký hiệu ưa thích. Ví dụ: Hoa Kỳ, Hoa Kỳ, Hoa Kỳ đều là bí danh của Hoa Kỳ. Bạn có thể làm cho chương trình nối thêm vào cơ sở dữ liệu bí danh để nó cải thiện khi nó đang được sử dụng. Bạn có thể thực hiện nhiều lần truyền dữ liệu và một số lượng công việc thủ công nhất định có liên quan.

Các vấn đề liên quan