新人报道,求助“如何查找subordinate clause"

之前看到论坛里面有关于如何把"relative clause"找出来的帖子。请问,有没有什么办法把所有的subordinate clause都筛选出来呢?
 
回复: 新人报道,求助“如何查找subordinate clause"

If your (English) corpus is POS tagged using CLAWS, you can search for all words tagged as CS (i.e.
subordinating conjunction such as if, because, unless, so, for)
 
回复: 新人报道,求助“如何查找subordinate clause"

肖教授您好,我有一个问题想请教一下,如何对已经进行POS标注和LEMMATIZATION标注的文本中的LEMMATIZATION进行统计?
下面附一段样本:
Bathtub_NNP_bathtub Battleships_NNP_battleship from_IN_from Ivorydale_NNP_ivorydale


American_JJ_american mothers_NNS_mother have_VBP_have long_RB_long believed_VBN_believe that_IN_that when_WRB_when it_PRP_it comes_VBZ_come to_TO_to washing_VBG_wash out_RP_out the_IN_the mouths_NNS_mouth of_IN_of naughty_JJ_naughty children_NNS_child ,_,_, nothing_NN_nothing beats_VBZ_beat Ivory_NNP_ivory Soap_NNP_soap (_(_( a_DT_a registered_VBN_register trademark_NN_trademark of_IN_of the_DT_the Proctor_NNP_proctor &_CC_& Gamble_NNP_gamble Company_NNP_company )_)_) ._._. This_DT_this is_VBZ_be because_IN_because its_PRP$_its reputation_NN_reputation for_IN_for being_VBG_be safe_JJ_safe ,_,_, mild_JJ_mild ,_,_, and_CC_and pure_JJ_pure is_VBZ_be as_IN_as solid_JJ_solid and_CC_and spotless_JJ_spotless as_IN_as the_DT_the marble_NN_marble of_IN_of the_DT_the Lincoln_NNP_lincoln Memorial_NNP_memorial ._._. It_PRP_it does_VBZ_do n't_RB_n't even_RB_even taste_VB_taste all_DT_all that_NN_that bad_JJ_bad ._._. And_CC_and should_MD_should you_PRP_you drop_VB_drop it_PRP_it into_IN_into a_DT_a tubful_NN_tubful of_IN_of cloudy_JJ_cloudy ,_,_, child_NN_child -_:_- colored_JJ_colored water_NN_water ,_,_, not_RB_not to_TO_to worry_VB_worry —_NN_— it_PRP_it floats_VBZ_float ._._.

谢谢!
 
回复: 新人报道,求助“如何查找subordinate clause"

肖教授在忙,我先教个不用编程的笨办法,抛砖引玉。简单说来就是使用Excel里的Subtotal功能来迅速统计

1、所需工具:
EditPlus (www.editplus.com)
Microsoft Excel

2、简单修改Tagged的文本:
用EditPlus打开你的文本,然后敲菜单里的Search,选择Replace,在弹出来的窗口里的Find What里填入“ ”(一个英文空格,不要引号),在Replace With里填入“\n”(不要引号),并选择下面的Regular Expression, 敲Replace All得到新文本;

再在Find What里填入“_”(一个英文下划线,不要引号),在Replace With里填入“\t”(不要引号),并选择下面的Regular Expression, 敲Replace All得到新文本,存下来备用。

3、用Excel来统计
用Excel打开刚才存下来的文本,可以看到是个三列的文件,第一列是Token,第二列是Tag,第三列是Lemma。鼠标放在第一个格子里,在Excel菜单中敲Insert,选Rows,这样就在文件中加入了第一行,把刚才说的列信息填进去,字体可以变大加粗,让第一行成为Column Lable;这样文件就显示成:

Token Tag Lemma
Bathtub NNP bathtub
mothers NNS mother
...

这里以统计Tag的频数来说明,其它同理。鼠标放到Tag那一个格子里,敲菜单中的Data,选择Sort,得到新排列,然后敲Data菜单下的Subtotals,在弹出来的窗口的第一个格子里选Tag,第二个选Count,然后敲Ok得到新数据。敲左面第一列里的那个数字2就可以看到关于Tag的统计结果了。

4、结果整理:
把Excel里的Subtotals的结果复制到EditPlus里,用菜单了的Search来Replace掉count就可以了。

同理可以搞定Token 和 Lemma的频数统计。Good Luck!
 
回复: 新人报道,求助“如何查找subordinate clause"

Is it a lemmatised word frequency list that you want?
 
回复: 新人报道,求助“如何查找subordinate clause"

谢谢Laohong,有点复杂了。

复杂了?可能是我写的罗唆了。你有没有动手试一下?我自己就这样子五分钟搞定了150篇课堂话语的语料(别问我如何用EditPlus一次处理150篇)。写个Perl Script 来处理当然更好了,问题是五分钟估计写不出来吧,而且又不是经常用。
 
回复: 新人报道,求助“如何查找subordinate clause"

补充一句:用在这里回答问题的时间来写段Perl代码应该够了,不过,授人鱼不如授人以渔。常看见肖教授等热心人士在这里有求必应,自己花时间写段代码传上来帮兄弟姐妹们解决一些切实的语料处理问题,但热心人也不是随时都在线都可以解决一切问题。其实,由于大多数人自己本身不会写代码,身边可能也碰巧没人可以求教,我们应该鼓励大家开动脑筋,尽量想办法试着用现有的工具来解决问题,毕竟远水不解近渴,求人不如求己。
 
回复: 新人报道,求助“如何查找subordinate clause"

Absolutely!

补充一句:用在这里回答问题的时间来写段Perl代码应该够了,不过,授人鱼不如授人以渔。常看见肖教授等热心人士在这里有求必应,自己花时间写段代码传上来帮兄弟姐妹们解决一些切实的语料处理问题,但热心人也不是随时都在线都可以解决一切问题。其实,由于大多数人自己本身不会写代码,身边可能也碰巧没人可以求教,我们应该鼓励大家开动脑筋,尽量想办法试着用现有的工具来解决问题,毕竟远水不解近渴,求人不如求己。
 
回复: 新人报道,求助“如何查找subordinate clause"

Please try laohong's method to see if you can get what you want.
 
回复: 新人报道,求助“如何查找subordinate clause"

I want to get a list like the following:
American_JJ_american
Bathtub_NNP_bathtub
Bathtubs_NNP_bathtub
Battleships_NNP_battleship
believe_VB_believe
believe_VB_believe
believed_VBN_believe
believing_VBG_believe
believes_VBZ_believe
............................

But Laohong's method seems difficult to achieve the purpose.
 
回复: 新人报道,求助“如何查找subordinate clause"

A word list like this can be made using standard package like Wordsmith. Before making a special wordlist like this, please first make a change in settings for Language by including the underscore _ in "character within word".

I want to get a list like the following:
American_JJ_american
Bathtub_NNP_bathtub
Bathtubs_NNP_bathtub
Battleships_NNP_battleship
believe_VB_believe
believe_VB_believe
believed_VBN_believe
believing_VBG_believe
believes_VBZ_believe
............................

But Laohong's method seems difficult to achieve the purpose.
 
回复: 新人报道,求助“如何查找subordinate clause"

I want to get a list like the following:
American_JJ_american
Bathtub_NNP_bathtub
Bathtubs_NNP_bathtub
Battleships_NNP_battleship
believe_VB_believe
believe_VB_believe
believed_VBN_believe
believing_VBG_believe
believes_VBZ_believe
............................

But Laohong's method seems difficult to achieve the purpose.

估计你真的没有动手试验一下我的方法。我的方法里的第一步就提到,你用EditPlus打开tagged的文本,用“\n”替代空格,不就得到你想要的上面列出来的list了吗?

如果你还想得到这个Token_Tag_Lemma格式的list里不同entry的频数,再用Excel打开做一下Subtotal不就行了?如果要分开统计Token、Tag、Lemma的频数,用最前面的方法就行。

简单的问题复杂化了,还以为你真要Lemma和Tag的频数。
 
回复: 新人报道,求助“如何查找subordinate clause"

想得到Token_Tag_Lemma格式的list里不同entry的频数,如肖教授所说,可以用WordSmtih来做。在WordSmith 4的Settings里Langauge下,把下划线“_”加入到Characters Within Words 那个格子里去,Save后就可以来做Wordlist了。

注意由于你的文本里有些字符,如 &_CC_&,its_PRP$_its,以及标点,_,_,,(_(_(等,WordSmith在统计Wordlist时会出错或缺失,而我前面的方法就不会有这个问题。
 
回复: 新人报道,求助“如何查找subordinate clause"

两种方法我都试过了,Laohong的方法可以统计得出三列数据,Xiaoz的方法就是将“_”看作词的一部分。
谢谢两位博士的指导。
 
回复: 新人报道,求助“如何查找subordinate clause"

还有一个问题,如何将汉语语料中的空格去掉,下面附一段:

[3]30岁刚过,我看到一家 商店橱窗里挂着一件雪白的棉 布婴儿服装,上面绣着小花朵。

谢谢!
 
回复: 新人报道,求助“如何查找subordinate clause"

用EditPlus的Search菜单,选择Replace, 在Find What里填入一个空格,在Replace With里啥也不填,然后敲Replace All就行了。
 
Back
顶部