在Praat上从文本电子表格中选择特定数据

时间:2018-06-23 10:30:00

标签: spreadsheet praat

这里没有Praaat脚本编制技巧。我现在正在扩展一个预先存在的代码,它会基于一组声音数据生成一堆表,下面是它们粘贴到Excel中时的样子的几个示例:

Table from Sound Data 1

Table from Sound Data 2

如您所见,每个声音文件中都有标签归属于不同的点,最重要的标签是'%','H'和'L'。我想将数据从“ tone_height”列复制到单独的表中-单独的“ H”表中的“ H”音高,单独的“ L”表中的“ L”音高等等。问题是,由于%,H和L值的数量在声音文件中不一致,因此,我很难编写出循环遍历所有这些表并仅获取H数据的算法。这是我到目前为止的代码:

  Read TableOfReal from headerless spreadsheet file... 'directory$''name$'.means
  nrows = Get number of rows
  ncolumns = Get number of columns
  tone_row = 0
    for n from 1 to nrows
        tone_height = Get value... n 12 
        if tone_height > 0              
            rowname$ = Get row label... n
            Select columns where row: "5", "self[row,0] = 'H'"
        endif

我试图告诉Praat复制第5列,并且仅复制第0列中的字符串为'H'的元素。但这似乎不起作用-我是否错过了额外的步骤或额外的条件?

1 个答案:

答案 0 :(得分:0)

在Praat中选择表格后,请尝试以下操作:

Extract rows where column (text): "rowLabel", "is equal to", "H"