russiannames
เป็นห้องสมุด Python 3 ที่อุทิศให้กับการแยกวิเคราะห์ชื่อรัสเซียนามสกุลและชื่อกลางระบุเพศบุคคลโดย FullName และวิธีการเขียนชื่อ มันใช้ MongoDB เป็นแบ็กเอนด์ไปยังการแยกชื่อการแยกชื่อ
เอกสารถูกสร้างขึ้นโดยอัตโนมัติและสามารถพบได้ที่ https://russiannames.readthedocs.org/en/latest/
ในการติดตั้ง Library Python ให้ใช้ pip install russiannames
ผ่าน PIP หรือ python setup.py install
ในการใช้ฐานข้อมูลคุณต้องมีอินสแตนซ์ MongoDB แกะไฟล์ db_data_bson.zip จาก https://github.com/datacoon/russiannames/blob/master/data/bson/db_dump_bson.zip
และใช้คำสั่ง mongorestore
เพื่อกู้คืนฐาน names
ด้วย 3 คอลเลกชัน: ชื่อนามสกุลและชื่อกลาง
ฐานข้อมูลชื่อที่ใช้ในการระบุตัวตน
สถิติฐานข้อมูลโดยละเอียดตามเพศและการรวบรวม
ของสะสม | ทั้งหมด | ตัวผู้ | ตัวเมีย | สากลหรือไม่ปรากฏชื่อ |
---|---|---|---|---|
ชื่อ | 32134 | 2470 | 8278 | 1196 |
ชื่อกลาง | 48274 | 30114 | 16143 | 0 |
นามสกุล | 375274 | 124662 | 111534 | 38827 |
สนับสนุนรูปแบบการเขียนชื่อเต็ม 12 รูปแบบของรัสเซีย
รูปแบบ | ตัวอย่าง | คำอธิบาย |
---|---|---|
f | олга | ชื่อแรกเท่านั้น |
S | петров | นามสกุลเท่านั้น |
FS | о сидорова | ตัวอักษรตัวแรกของชื่อและนามสกุลเต็ม |
SF | николаевโทร | นามสกุลเต็มและตัวอักษรตัวแรก |
SF | арамовсемен | นามสกุลเต็มและชื่อเต็ม |
FS | сонякамиуина | ชื่อเต็มชื่อและนามสกุลเต็มรูปแบบ |
FM | иванетрович | ชื่อเต็มชื่อและชื่อมิดเดิ้ลเต็มรูปแบบ |
SFM | м.дм | ตัวอักษรตัวแรกชื่อชื่อมิดเดิ้ลชื่อ |
FMS | ан. егорова | ตัวอักษรตัวแรกของชื่อแรกและชื่อกลางและเฟอร์นิพชื่อเต็ม |
SFM | николаенко .п. | นามสกุลเต็มและตัวอักษรตัวแรกของชื่อแรกและชื่อกลาง |
SFM | петраковазинаидаиа | นามสกุลนามสกุลชื่อและตัวอักษรตัวแรกของชื่อกลาง |
SFM | казаринатртурович | ชื่อเต็มเป็นนามสกุลชื่อและชื่อกลาง |
FMS | I | ชื่อเต็มเป็นชื่อชื่อกลางและนามสกุล |
สนับสนุนชื่อที่มีการระบุชาติพันธุ์ต่อไปนี้
9 ประเภทชาติพันธุ์ในชื่อนามสกุลและชื่อกลางที่รองรับ
สำคัญ | ชื่อ (en) | ชื่อ (rus) |
---|---|---|
ชาวอาหรับ | ภาษาอาหรับ | арабское |
แขน | เกี่ยวกับอาร์เมเนีย | армянское |
จีเออร์ | ชาวจอร์เจีย | грзинское |
เชื้อโรค | ชาวเยอรมัน | немецкие |
กรีก | กรีก | греческие |
ชาวยิว | ชาวยิว | еврейские |
โปลสค์ | ขัด | полские |
ชาวสลาฟ | สลาฟ (รัสเซีย) | савสาธารณะ |
คนโง่ | เติร์ก | ююркские (юркоязычные) |
แยกวิเคราะห์ชื่อและผลตอบแทน: รูปแบบนามสกุลชื่อชื่อกลางการแยกวิเคราะห์ (จริง/เท็จ) และเพศ
>>> from russiannames.parser import NamesParser
>>> parser = NamesParser()
>>> parser.parse('Нигматуллин Ринат Ахметович')
{'format': 'sfm', 'sn': 'Нигматуллин', 'fn': 'Ринат', 'mn': 'Ахметович', 'gender': 'm', 'text': 'Нигматуллин Ринат Ахметович', 'parsed': True}
>>> parser.parse('Петрова C.Я.')
{'format': 'sFM', 'sn': 'Петрова', 'fn_s': 'C', 'mn_s': 'Я', 'gender': 'f', 'text': 'Петрова C.Я.', 'parsed': True}
ฟิลด์เพศอาจมีค่าหนึ่งในค่าต่อไปนี้:
พาร์สนามนามสกุลชื่อและชื่อกลางและพยายามระบุความร่วมมือทางจริยธรรมของบุคคลของบุคคล
>>> from russiannames.parser import NamesParser
>>> parser = NamesParser()
>>> parser.classify('Нигматуллин', 'Ринат', 'Ахметович')
{'ethnics': ['tur'], 'gender': 'm'}
>>> parser.classify('Алексеева', 'Ольга', 'Ивановна')
{'ethnics': ['slav'], 'gender': 'f'}