Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updata to PyThaiNLP 1.0.0 #7

Merged
merged 33 commits into from
Jan 4, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
6123b41
delete test.py
wannaphong Jan 2, 2017
87ac96c
goodbye 12.py
wannaphong Jan 2, 2017
85ca71f
updata code & docs
wannaphong Jan 2, 2017
b84a7bc
updata setup.py
wannaphong Jan 2, 2017
29a4173
add build-readme tool
wannaphong Jan 2, 2017
8dd9097
fix pos
wannaphong Jan 2, 2017
3c2a426
fix pos
wannaphong Jan 2, 2017
6de59fa
add py27
wannaphong Jan 2, 2017
6771cac
add pypy
wannaphong Jan 2, 2017
b75cf8f
updata code
wannaphong Jan 2, 2017
9f0a1f2
fix json
wannaphong Jan 2, 2017
fc59709
updata README.rst
wannaphong Jan 2, 2017
e456b57
fix python 2.7
wannaphong Jan 3, 2017
7254a4c
fix python 2 and python 3
wannaphong Jan 3, 2017
6b1bd07
fix import future
wannaphong Jan 3, 2017
ce1e331
fix setup
wannaphong Jan 3, 2017
c02c8bf
fix setup.py
wannaphong Jan 3, 2017
f7e3640
fix segment
wannaphong Jan 3, 2017
3ad110c
fix open file
wannaphong Jan 3, 2017
60fb16c
fix utf-8 data file
wannaphong Jan 3, 2017
0bfff7b
fix utf-8 to utf-8-sig
wannaphong Jan 3, 2017
a0ff772
fix setup.py
wannaphong Jan 3, 2017
a1b2c54
fix setup.py
wannaphong Jan 3, 2017
548c336
fix encoding setup.py
wannaphong Jan 3, 2017
f998686
fix setup.py in travis-ci
wannaphong Jan 3, 2017
a5e97f6
test py27
wannaphong Jan 3, 2017
d554b87
fix travis
wannaphong Jan 3, 2017
cea51b7
add travis
wannaphong Jan 3, 2017
0745cba
python 2 & python 3 fix
wannaphong Jan 4, 2017
5d8068c
add test
wannaphong Jan 4, 2017
a009dab
add more test
wannaphong Jan 4, 2017
1f3d4bb
add test py36
wannaphong Jan 4, 2017
8cb3e8b
updata docs
wannaphong Jan 4, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,17 @@ language: python
python: 3.5

env:
- TOXENV=py36
- TOXENV=py35
- TOXENV=py34
- TOXENV=py33
- TOXENV=py27
- TOXENV=pypy
# command to install dependencies, e.g. pip install -r requirements.txt --use-mirrors
install: pip install -U tox

# command to run tests, e.g. python setup.py test
script: tox -e ${TOXENV}
script: python setup.py test

# After you create the Github repo and add it to Travis, run the
# travis_pypi_setup.py script to finish PyPI deployment setup
Expand All @@ -25,4 +28,4 @@ deploy:
on:
tags: true
repo: wannaphongcom/pythainlp
condition: $TOXENV == py35
#condition: $TOXENV == py35
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# PyThaiNLP
[![PyPI Downloads](https://img.shields.io/pypi/dm/pythainlp.png)]
[![pypi](https://img.shields.io/pypi/v/pythainlp.svg)](https://pypi.python.org/pypi/pythainlp)
[![Build Status](https://travis-ci.org/wannaphongcom/pythainlp.svg?branch=master)](https://travis-ci.org/wannaphongcom/pythainlp)
[![Build Status](https://travis-ci.org/wannaphongcom/pythainlp.svg?branch=develop)](https://travis-ci.org/wannaphongcom/pythainlp)

Thai NLP in python package.

Natural language processing หรือ การประมวลภาษาธรรมชาติ โมดูล PyThaiNLP เป็นโมดูลที่ถูกพัฒนาขึ้นเพื่องานวิจัยและพัฒนาการประมวลภาษาธรรมชาติภาษาไทยในภาษา Python

รองรับเฉพาะ Python 3 เท่านั้น
รองรับทั้ง Python 2.7 และ Python 3

- เอกสารการใช้งาน : [https://pythonhosted.org/pythainlp/](https://pythonhosted.org/pythainlp/)
- หน้าหลัก GitHub : [https://github.com/wannaphongcom/pythainlp](https://github.com/wannaphongcom/pythainlp)
Expand All @@ -17,7 +17,7 @@ Natural language processing หรือ การประมวลภาษา
กำลังพัฒนา

### Version
0.0.9
1.0.0

### ความสามารถ
- ตัดคำภาษาไทย
Expand All @@ -31,7 +31,7 @@ Natural language processing หรือ การประมวลภาษา

# ติดตั้ง

รองรับเฉพาะ Python 3
รองรับทั้ง Python 2.7 และ Python 3

รุ่นเสถียร
```sh
Expand Down
116 changes: 97 additions & 19 deletions README.rst
Original file line number Diff line number Diff line change
@@ -1,32 +1,110 @@
===============================
PyThaiNLP
===============================
=========

.. image:: https://img.shields.io/pypi/v/pythainlp.svg
:target: https://pypi.python.org/pypi/pythainlp

.. image:: https://img.shields.io/travis/wannaphongcom/pythainlp.svg
:target: https://travis-ci.org/wannaphongcom/pythainlp
[|PyPI Downloads|][|pypi|](https://pypi.python.org/pypi/pythainlp)
|Build Status|

Thai NLP in python package.

Natural language processing หรือ การประมวลภาษาธรรมชาติ โมดูล PyThaiNLP
เป็นโมดูลที่ถูกพัฒนาขึ้นเพื่องานวิจัยและพัฒนาการประมวลภาษาธรรมชาติภาษาไทยในภาษา
Python

รองรับทั้ง Python 2.7 และ Python 3

- เอกสารการใช้งาน : https://pythonhosted.org/pythainlp/
- หน้าหลัก GitHub : https://github.com/wannaphongcom/pythainlp

สถานะโครงการ
~~~~~~~~~~~~

กำลังพัฒนา

Version
--------
0.0.9
~~~~~~~

1.0.0

ความสามารถ
~~~~~~~~~~

- ตัดคำภาษาไทย
- ถอดเสียงภาษาไทยเป็น Latin
- Postaggers ภาษาไทย
- อ่านตัวเลขเป็นข้อความภาษาไทย
- เรียงจำนวนคำของประโยค
- แก้ไขปัญหาการพิมพ์ลืมเปลี่ยนภาษา
- เช็คคำผิดในภาษาไทย
- และอื่น ๆ

ติดตั้ง
=======

รองรับทั้ง Python 2.7 และ Python 3

รุ่นเสถียร

.. code:: sh

$ pip3 install pythainlp

รุ่นกำลังพัฒนา

.. code:: sh

$ git clone https://github.com/wannaphongcom/pythainlp.git
$ cd pythainlp
$ python setup.py install

เอกสารการใช้งานเบื้องต้น
========================

ตัวอย่างการใช้งาน

.. code:: python

* Free software: Apache Software License 2.0
* Documentation: https://pythonhosted.org/pythainlp/
# ตัดคำ
from pythainlp.segment import segment
a = 'ฉันรักภาษาไทยเพราะฉันเป็นคนไทย'
b = segment(a)
print(b) # ['ฉัน', 'รัก', 'ภาษาไทย', 'เพราะ', 'ฉัน', 'เป็น', 'คนไทย']
# Postaggers ภาษาไทย
from pythainlp.postaggers import tag
print(tag('คุณกำลังประชุม')) # [('คุณ', 'PPRS'), ('กำลัง', 'XVBM'), ('ประชุม', 'VACT')]
# หาคำที่มีจำนวนการใช้งานมากที่สุด
from pythainlp.rank import rank
aa = rank(b)
print(aa) # Counter({'ฉัน': 2, 'ไทย': 2, 'เป็น': 1, 'รัก': 1, 'ภาษา': 1, 'เพราะ': 1, 'คน': 1})
# ถอดเสียงภาษาไทยเป็น Latin
from pythainlp.romanization import romanization
b=romanization("แมว")
print(b) # mæw
# แก้ไขปัญหาการพิมพ์ลืมเปลี่ยนภาษา
from pythainlp.change import *
a="l;ylfu8iy["
a=texttothai(a)
b="นามรสนอำันี"
b=texttoeng(b)
print(a) # สวัสดีครับ
print(b) # ok,iloveyou
# เปลี่ยนตัวเลขเป็นตัวอักษรภาษาไทย (เงินบาท)
from pythainlp.number import numtowords
print("5611116.50")
print(numtowords(5611116.50)) # ห้าล้านหกแสนหนึ่งหมื่นหนึ่งพันหนึ่งร้อยสิบหกบาทห้าสิบสตางค์

License
~~~~~~~

Features
--------
Apache Software License 2.0

* Thai split words
* Thai postagger
* And more.
พัฒนาโดย นาย วรรณพงษ์ ภัททิยไพบูลย์

สนับสนุน
~~~~~~~~

INSTALL
--------
คุณสามารถร่วมพัฒนาโครงการนี้ได้ โดยการ Fork และส่ง pull requests กลับมา

$ pip3 install pythainlp
.. |PyPI Downloads| image:: https://img.shields.io/pypi/dm/pythainlp.png
.. |pypi| image:: https://img.shields.io/pypi/v/pythainlp.svg
.. |Build Status| image:: https://travis-ci.org/wannaphongcom/pythainlp.svg?branch=develop
:target: https://travis-ci.org/wannaphongcom/pythainlp
1 change: 1 addition & 0 deletions build-readme.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
pandoc -f markdown -t rst -o README.rst README.md
9 changes: 9 additions & 0 deletions docs/docs.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,15 @@ pythainlp.postaggers.tag(str)
[('แมว', 'NCMN'), ('กิน', 'VACT'), ('ปลา', 'NCMN')
```

## ตรวจคำผิด

คุณจะต้องติดตั้ง hunspell ( https://github.com/hunspell/hunspell/ )ในเครื่องของคุณก่อนใช้งานความสามารถนี้

```python
pythainlp.spell.spell(str)
```
ส่งออกเป็น list

## หาคำที่มีจำนวนการใช้งานมากที่สุด

```python
Expand Down
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Thai NLP in python package.
PyThaiNLP เป็นโมดูลด้าน Natural language processing ภาษาไทยในภาษา Python

## เวชั่น
0.0.7
1.0.0

- เอกสารการใช้งาน : [https://pythonhosted.org/pythainlp/](https://pythonhosted.org/pythainlp/)
- หน้าหลัก GitHub : [https://github.com/wannaphongcom/pythainlp](https://github.com/wannaphongcom/pythainlp)
Expand Down
1 change: 0 additions & 1 deletion pythainlp/12.py

This file was deleted.

25 changes: 15 additions & 10 deletions pythainlp/__init__.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,19 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import unicode_literals
from __future__ import print_function
from __future__ import division
from future import standard_library
standard_library.install_aliases()
__author__ = 'Wannaphong Phatthiyaphaibun'
__email__ = 'wannaphong@yahoo.com'
__version__ = '0.0.9'
from . import romanization
from . import segment
from . import rank
from . import change
from . import number
from . import date
from . import postaggers
from . import collation
from . import spell
__version__ = '1.0.0'
from pythainlp.romanization import *
from pythainlp.segment import *
from pythainlp.rank import *
from pythainlp.change import *
from pythainlp.number import *
from pythainlp.date import *
from pythainlp.postaggers import *
from pythainlp.collation import *
from pythainlp.spell import *
5 changes: 5 additions & 0 deletions pythainlp/change/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import,print_function
from __future__ import unicode_literals
from __future__ import division
from future import standard_library
standard_library.install_aliases()
from nine import str,iteritems
dictdata={'Z':'(','z':'ผ','X':')','x':'ป','C':'ฉ','c':'แ','V':'ฮ','v':'อ','B':'ฺ','b':'ิ','N':'์','n':'ื','M':'?','m':'ท','<':'ฒ',',':'ม','>':'ฬ','.':'ใ','?':'ฦ','/':'ฝ',
'A':'ฤ','a':'ฟ','S':'ฆ','s':'ห','D':'ฏ','d':'ก','F':'โ','f':'ด','G':'ฌ','g':'เ','H':'็','h':'้','J':'๋','j':'j','K':'ษ','k':'า','L':'ศ','l':'ส',':':'ซ','"':'.',"'":"ง",':':'ซ',';':'ว',
Expand Down
5 changes: 5 additions & 0 deletions pythainlp/collation/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import,print_function
from __future__ import unicode_literals
from __future__ import division
from future import standard_library
standard_library.install_aliases()
import icu
collator1 = icu.Collator.createInstance(icu.Locale('th_TH'))
# เรียงลำดับข้อมูล list ภาษาไทย
Expand Down
9 changes: 7 additions & 2 deletions pythainlp/corpus/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
from __future__ import absolute_import
from __future__ import print_function
# -*- coding: utf-8 -*-
from __future__ import absolute_import,print_function
from __future__ import unicode_literals
from __future__ import division
from future import standard_library
standard_library.install_aliases()
__all__ = ["thaipos", "thaiword"]
from .thaipos import get_data
from .thaiword import get_data
2 changes: 1 addition & 1 deletion pythainlp/corpus/thaipos.json

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions pythainlp/corpus/thaipos.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import unicode_literals
from __future__ import print_function
from __future__ import division
from builtins import open
from future import standard_library
standard_library.install_aliases()
import pythainlp
import os
from nine import nimport,str
Expand Down
7 changes: 7 additions & 0 deletions pythainlp/corpus/thaiword.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import unicode_literals
from __future__ import print_function
from __future__ import division
from future import standard_library
standard_library.install_aliases()
import os
from nine import nimport,str
codecs= nimport('codecs')
Expand Down
2 changes: 1 addition & 1 deletion pythainlp/corpus/thaiword.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ก.
ก.
ก.ค.
ก.ต.
ก.ป.ส.
Expand Down
7 changes: 6 additions & 1 deletion pythainlp/date/__init__.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import unicode_literals
from __future__ import print_function
from __future__ import division
# TODO

# BE คือ พ.ศ.
# AD คือ ค.ศ.
# AH ปีฮิจเราะห์ศักราชเป็นปีพุทธศักราช จะต้องบวกด้วย 1122
# AH ปีฮิจเราะห์ศักราชเป็นปีพุทธศักราช จะต้องบวกด้วย 1122
from future import standard_library
standard_library.install_aliases()
6 changes: 6 additions & 0 deletions pythainlp/number/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# -*- coding: utf-8 -*-
# ระบบแปลงเลขใน 1- 10 ภาษาไทย
from __future__ import absolute_import,division,print_function
from __future__ import unicode_literals
from builtins import dict
from builtins import int
from future import standard_library
standard_library.install_aliases()
from nine import str
import math
p = [['ภาษาไทย', 'ตัวเลข','เลขไทย'],
Expand Down
7 changes: 7 additions & 0 deletions pythainlp/postaggers/__init__.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,9 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import unicode_literals
from __future__ import print_function
from __future__ import division
from future import standard_library
standard_library.install_aliases()
__all__ = ["text"]
from .text import tag
6 changes: 5 additions & 1 deletion pythainlp/postaggers/text.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,19 @@
from __future__ import absolute_import,division,print_function
from __future__ import unicode_literals
from future import standard_library
standard_library.install_aliases()
from nine import nimport,str
from pythainlp.segment import segment
import pythainlp
import codecs
import os
json= nimport('json')
import nltk.tag, nltk.data
templates_dir = os.path.join(os.path.dirname(pythainlp.__file__), 'corpus')
template_file = os.path.join(templates_dir, 'thaipos.json')
#default_tagger = nltk.data.load(nltk.tag._POS_TAGGER)
def data():
with open(template_file) as handle:
with codecs.open(template_file,'r',encoding='utf-8-sig') as handle:
model = json.load(handle)
return model
data1 =data()
Expand Down
1 change: 0 additions & 1 deletion pythainlp/pythainlp.py

This file was deleted.

3 changes: 3 additions & 0 deletions pythainlp/rank/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import,print_function
from __future__ import unicode_literals
from __future__ import division
from future import standard_library
standard_library.install_aliases()
from collections import Counter
Expand Down
5 changes: 5 additions & 0 deletions pythainlp/romanization/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import,print_function
from __future__ import unicode_literals
from __future__ import division
from future import standard_library
standard_library.install_aliases()
import icu
# ถอดเสียงภาษาไทยเป็น Latin
def romanization(data):
Expand Down
Loading