แปลง Orchid Corpus ไว้ใช้งาน

27 Oct

เมื่อวันก่อนทำการแปลง Lexcitron ไว้ใช้งาน ให้อยู่ในรูปแบบ CSV สำหรับเอาไว้ใช้ในงานวิจัยแล้วซึ่งรูปแบบ CSV น่าจะเป็นรูปแบบที่สะดวกใช้ที่สุด

วันนี้เลยทำการแปลงตัว Orchid Corpus ไว้ใช้งานบ้าง ซึ่ง Orchid Corpus นี้เป็นคลังคำภาษาไทยที่รวบรวมและจำแนกโดย nectec ซึ่งข้อดีของของ Orchid Corpus คือมี Part of Speech ที่ละเอียดมากกว่าของ Lexcitron ซึ่งจำเป็นต้องใช้ในงานวิจัยนี้ และตัว Orchid Corpus ก็ไม่ได้มีโครงสร้างที่ซับซ้อนอะไรมากนัก

เลยลองเขียน Code ด้วยภาษา Python ง่ายๆ เพื่ออ่านไฟล์ Orchid Corpus ออกมาและจัดเรียงรูปแบบที่สะดวกใช้งานให้อยู่ในรูปแบบ CSV

#!/usr/bin/python
# -*- coding: utf-8 -*-

import nltk.corpus
import codecs

path = nltk.data.find('orchid97.txt')
outfile_path = './csv/orchid-utf8.csv'

header = ['thai', 'pos']
header_str = ','.join(header).encode('utf-8')+'\n'
with open(outfile_path, 'a') as outfile:
    outfile.write(header_str)

lines = codecs.open(path,encoding='utf-8').readlines()
for line in lines:
    line = line.rstrip('\n')
    if line[0]!='%' and line[0]!='#' and line[0]!='<' and line[0]!='/':
        token = line.split('/')
        if len(token) == 2:
            print "%s : %s\n" %(token[0], token[1])
            csv_line = ",".join(token).encode('utf-8')+'\n'

            with open(outfile_path, 'a') as outfile:
                outfile.write(csv_line)

สำหรับข้อมูลทุกอย่างอยู่บน github เรียบร้อยแล้วครับ

Social Comments

Loading Disqus Comments ...
Loading Facebook Comments ...