テキストデータを扱うためのTextDataクラス

TextDataクラス

テキスト基本情報

String originalText;入力テキストの文字列
int textLength;入力テキストの文字数(改行コードを含みます。バージョン4.61まではWindowsだと改行1つで2文字分カウントされます
SegmentData segment[];セグメントデータ(環境設定/設定ファイル tetdm.conf で指定された文字列
スナリバラフト」を区切りとして分けられる)
int segmentNumber;セグメント数(SegmentData 型配列 segment[] の要素数)
SentenceData sentence[];文データ(環境設定/設定ファイル tetdm.conf で指定された 句点 を区切りとして分けられる)
(上記 SegmentData内でインスタンス化されている sentence を参照する)
int sentenceNumber;文の数(SentenceData 型配列 sentence[] の要素数)
KeywordData keyword[];テキスト内のキーワード(環境設定/設定ファイル tetdm.conf で指定した品詞)に関するデータ
int keywordNumber;テキスト内のキーワードの種類数(KeywordData 型配列 keyword[] の要素数)
int wordNumber;テキスト内の単語総数

テキスト前処理データ

int sentenceToSegment[];添字として与えられた番号の文が属するセグメント番号(ただし先頭の文番号,セグメント番号は0)
RelationalData segmentRelation;「セグメント」をベクトル,「キーワード」をベクトルの要素とした,ベクトル間の関連度.関連度を計算するセグメント数の最大値は1000
RelationalData sentenceRelation;(現在使用できません)「文」をベクトル,「キーワード」をベクトルの要素とした,ベクトル間の関連度.関連度を計算する文数の最大値は100(バージョン0.59から)
RelationalData keywordRelationBySegment;「キーワード」をベクトル,「キーワードが出現するセグメント」をベクトルの要素とした,ベクトル間の関連度.関連度を計算する文数の最大値は1500
RelationalData keywordRelationBySentence;(現在使用できません)「キーワード」をベクトル,「キーワードが出現する文」をベクトルの要素とした,ベクトル間の関連度

テキスト処理設定情報

int textID;テキストのID.現在は,以下の値が設定されます.
0:ファイルから読み込んだテキスト
1:セグメント絞り込みで作成された部分テキスト
2:文絞り込みで作成された部分テキスト
String sourceFilename;入力テキストのファイル名(絶対パスつき)
String absolutePath;TETDMの実行ファイルがあるフォルダへの絶対パス
String defaultCode;入力テキスト保存時の文字コード
String getSegmentTag();セグメントの区切り文字の取得(Ver.0.45から)
String getSentenceTag();文の区切り文字の取得(Ver.0.45から)
final int maxKeywordNumber=10000;テキスト内のキーワードの最大種類数(この数値を超えるときにはエラーになります)
String getFontName();デフォルトフォント名(キーワード設定で変更可能)(Ver.0.58から)

フォーカス情報の利用関連

Focus focus;ツール間連動のためのフォーカス情報を扱うための情報
void setSegmentPartialTextData()セグメント絞り込み(Focus型のfocusSegments[]で,trueにセットされたセグメント)による部分テキストデータの作成.以下,作成されるデータの概要↓
セグメント数:フォーカス中のセグメント数
文数:フォーカス中のセグメントに含まれる文の数の合計
キーワード数もとのまま.頻度は再計算される
void setSentencePartialTextData()文絞り込み(Focus型のfocusSentences[]で,trueにセットされた文)による部分テキストデータの作成.以下,作成されるデータの概要↓
セグメント数もとのまま.文の数が0になることもある
文数:フォーカス中の文の数
キーワード数もとのまま.頻度は再計算される
int originalSegmentNumbers[];部分テキスト内のセグメントの,もとのテキスト内でのセグメント番号(ただし先頭のセグメント番号は0)
int originalSentenceNumbers[];部分テキスト内の文の,もとのテキスト内での文番号(ただし先頭の文番号は0)

ファイル出力

void fileSaveOnly(String)引数として与えられた文字列で,入力テキストを上書きする.TETDMの実行ファイルがあるフォルダ内にも,ファイル「REVISEDTEXT」をコピーとして作成する.
void fileSaveOnly(String[])引数として与えられた文字列を結合した文字列で,入力テキストを上書きする.TETDMの実行ファイルがあるフォルダ内にも,ファイル「REVISEDTEXT」をコピーとして作成する.
void fileSave(String)引数として与えられた文字列で,入力テキストを上書きする.上書き後,すべてのパネルの処理が再実行される.TETDMの実行ファイルがあるフォルダ内にも,ファイル「REVISEDTEXT」をコピーとして作成する.
void fileSave(String[])引数として与えられた文字列を結合した文字列で,入力テキストを上書きする.上書き後,すべてのパネルの処理が再実行される.TETDMの実行ファイルがあるフォルダ内にも,ファイル「REVISEDTEXT」をコピーとして作成する.

TextData型のサブクラス

SegmentData型

int segmentID;セグメントのID.テキスト絞込みの前後で不変.
String segmentText;セグメントのテキスト
int segmentLength;セグメントの文字数(改行コードを含みます。バージョン4.61まではWindowsだと改行1つで2文字分カウントされます
SentenceData sentence[];セグメント内の文データ
int sentenceNumber;セグメント内の文の数(SentenceData 型配列 sentence[] の要素数)
int wordNumber;セグメント内の総単語数
int kindKeywordNumber;セグメント内のキーワード種類数
int positionOfSegment;入力テキスト内でのセグメント番号(ただし先頭のセグメント番号は0)
int positionOfFirstSentence;セグメント内の先頭の文の,入力テキスト内での文番号(ただし先頭の文番号は0)
int posiNega;セグメントのポジネガ(正:ポジ,負:ネガ,0;ニュートラル:セグメント内の文(単語)のポジネガの合計値で評価)(Ver4.64から)

SentenceData型

int sentenceID;文のID.テキスト絞込みの前後で不変.
int segmentID;文を含むセグメントのID.テキスト絞込みの前後で不変.(Ver3.50から)
String sentenceText;文のテキスト
int sentenceLength;文の文字数(改行コードを含みます。バージョン4.61まではWindowsだと改行1つで2文字分カウントされます
int keywordIDList[];文内に出現するキーワードIDのリスト(出現順)(IDは KeywordData型配列 keywords[] の添字を表す)
int keywordNumber;文内に出現するキーワード数(int 型配列 keywordIDList[] の要素数)
int kindKeywordNumber;文内のキーワード種類数
String word[];文内の全単語リスト(出現順)(出現時の活用形)
String wordEndForm[];文内の全単語リスト(出現順)(終止形)
int wordIDList[];文内に出現する単語IDのリスト(出現順)(IDは KeywordData型配列 keyword[] の添字を表す)
ただし,キーワード以外の単語IDはすべて負の値(-1から-8)
int wordNumber;文内の単語数(String 型配列 word[], wordEndForm[], wordIDList[] の要素数)
int positionOfSegment;文を含むセグメントの入力テキスト内での番号(ただし先頭のセグメント番号は0)(Ver.3.50から)
int positionOfSentenceInSegment;文を含むセグメント内での文番号(ただし先頭の文番号は0)(Ver.3.50でpositionOfSegmentから変数名変更)
int positionOfSentenceInText;入力テキスト内での文番号(ただし先頭の文番号は0)(Ver.3.50でpositionOfSentenceから変数名変更)
boolean subjectCheck[];文内の各単語が主語であればtrue,要素数はwordNumber
boolean hasSubject;文が主語を含んでいればtrue
int posiNega;文のポジネガ(正:ポジ,負:ネガ,0;ニュートラル:文内の単語のポジネガの合計値)(Ver4.64から)
int wordPosiNega[];単語のポジネガ(1:ポジ,-1:ネガ,0;ニュートラル:文内の単語の並びによる補正により同一単語のKeywordDataのポジネガ値と一致しないことがあります)(Ver4.64から)

KeywordData型

String word;キーワードの文字列(活用する単語の場合は終止形)
int partOfSpeech;キーワードの品詞:1 名詞, 2 動詞, 3 形容詞, 4 接続詞, 5 副詞, 6 感動詞, 7 助詞, 8 助動詞, 9 連体詞
(現在,未知語は扱えません)
int frequency;キーワードの総頻度
int frequencyInSegment[];キーワードの各セグメント内での頻度(添字は 0 から始まるセグメント番号)
int sentenceFrequencyInSegment[];キーワードの各セグメント内での文頻度(添字は 0 から始まるセグメント番号)
int appearingSegment[];キーワードが出現するセグメント番号のリスト
int appearingSegmentTable[];添字がキーワードが出現するセグメント番号であれば 1, そうでなければ 0
int segmentFrequency;セグメント頻度:キーワードが出現するセグメントの数(int 型配列 appearingSegment[] の要素数)
int lastAppearingSegment;キーワードが最後に出現するセグメント番号
int appearingSentence[];キーワードが出現する文番号のリスト
int appearingSentenceTable[];添字がキーワードが出現する文番号であれば 1, そうでなければ 0
int sentenceFrequency;文頻度:キーワードが出現する文の数(int 型配列 appearingSentence[] の要素数)
int lastAppearingSentence;キーワードが最後に出現する文番号
int frequencyAsSubject;キーワードが主語として出現する頻度
int segmentFrequencyAsSubject;キーワードが主語として出現するセグメント数
int posiNega;キーワードのポジネガ(1:ポジ,-1:ネガ,0;ニュートラル)(Ver4.64から)

RelationalData型

String name[];各ベクトルの名前
int frequency[];各ベクトルの非ゼロの要素数
int coFrequency[][];ベクトル間で共通に存在する非ゼロ要素数
double cond[][];ベクトル間の条件付き確率(各ベクトルの要素は 0 または 1 としたとき)
double cos[][];ベクトル間のコサイン類似度(各ベクトルの要素は 0 または 1 としたとき)
int number;ベクトル数(上記各配列,各次元の要素数)

Focus型

以下のメソッドは,TextDataに依存しない,統合環境内で共通のフォーカス情報です.
MiningModule.javaおよびVisualization.java内で,下記のメソッドが用意されています.
(同じテキストを再度読み込んだり,異なるテキストを読み込んだ後も,初期化されずに値が残ります)

void setMainFocusInteger(int value)
void setSubFocusInteger(int value)
int getMainFocusInteger()
int getSubFocusInteger()
ある整数のフォーカス(第1,第2)用変数へのアクセス
(-1で初期化)
void setMainFocusDouble(double value)
void setSubFocusDouble(double value)
double getMainFocusDouble()
double getSubFocusDouble()
ある実数のフォーカス(第1,第2)用変数へのアクセス
(-1.0で初期化)
void setMainFocusString(String word)
void setSubFocusString(String word)
String getMainFocusString()
String getSubFocusString()
ある文字列のフォーカス(第1,第2)用変数へのアクセス
(""で初期化)
void setMainFocusBoolean(boolean value)
void setSubFocusBoolean(boolean value)
boolean getMainFocusBoolean()
boolean getSubFocusBoolean()
ある真理値のフォーカス(第1,第2)用変数へのアクセス
(falseで初期化)
void setFocusBooleanArray(boolean value[])
boolean[] getFocusBooleanArray()
ある真理値集合のフォーカス用変数へのアクセス
(要素数1でfalseで初期化)
void setFocusIntegerArray(int value[])
int[] getFocusIntegerArray()
ある整数集合のフォーカス用変数へのアクセス
(要素数1で-1で初期化)
void setFocusDoubleArray(double value[])
double[] getFocusDoubleArray()
ある実数集合のフォーカス用変数へのアクセス
(要素数1で-1.0で初期化)
void setFocusStringArray(String word[])
String[] getFocusStringArray()
ある文字列集合のフォーカス用変数へのアクセス
(要素数1で""で初期化)
void setFocusBooleanArray2(boolean value[][])
boolean[][] getFocusBooleanArray2()
ある真理値集合のフォーカス用変数へのアクセス
(要素数1でfalseで初期化)
void setFocusIntegerArray2(int value[][])
int[][] getFocusIntegerArray2()
ある整数集合のフォーカス用変数へのアクセス
(要素数1で-1で初期化)
void setFocusDoubleArray2(double value[][])
double[][] getFocusDoubleArray2()
ある実数集合のフォーカス用変数へのアクセス
(要素数1で-1.0で初期化)

主語の判定方法

改行コードの位置についての追記


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS