-2

以下を実行する単純なテキスト分類を実行したいと考えています。 - 各「損失の説明」に災害に関連するキーワードが含まれているかどうかを確認します。それ以外の場合は、単に「災害なし」と表示します

コードにどのようなエラーがあるか (datarecord の最初の行は単なるフィールド名です)、またはコードを記述するより効率的な方法を指摘してください。

disaster_cat = [(('lightning'),'lightning'),
                (('hurricane', 'sandy', 'irene', 'isaac', 'gustav'),'Hurricane'),
                (('tornado'),'Tornado'),
                (('flood'),'Flood'),
                (('wildfire', 'wild fire'),'Wild Fire')]

disaster_type = 'Non-Disaster' 
for record in datarecords[1:]:
    record.append(disaster_type) #pre-populate every field with 'Non-Disaster'

for record in datarecords[1:]:    
    for pairs in disaster_cat:        
        for phrase in pairs[0]:            
            if phrase in record[loss_desc_idx]: #check to see if the loss description contains kw
                record[-1] = pairs[1]           #if has kw, change disaster type 'Non-Disaster'
                                                #to appropriate diaster category

理想的な結果として、損失の説明が「スーパーストーム サンディによって車が破壊された」の場合、対応する Disaster_type は「ハリケーン」になります。

4

1 に答える 1

1

単一要素のタプルを作成するには、括弧内にコンマを挿入する必要があります。

(('lightning',),'lightning')
于 2013-05-17T20:20:03.393 に答える