关键字执行不正确

时间:2019-10-11 17:12:27

标签: python

对于该存储库,我尝试执行以下命令:

$ python feature_extraction.py -t 1 -i mairesse_Apache.arff

这是我拥有的arff文件的结构 enter image description here 我收到此错误:

Reading and cleaning emails corpus. Number of emails: 3
 Mails retrieved: 3
 Email addresses: 3
 Traceback (most recent call last):
   File "feature_extraction.py", line 64, in <module>
     main(sys.argv[1:])
   File "feature_extraction.py", line 39, in main
     ut.get_binary_scores(sorted(dict.keys()), str(task_num), str(task_num).join(score_file))
   File "C:\git\Personality-Recognition-in-SD\Utils.py", line 33, in get_binary_scores
     openness.append(p['openness'])
 KeyError: 'openness'

这是util文件存储库中的代码(我张贴到错误行):

import json as js
import statistics
import pandas as pd
import os

with open('data/mailingList', 'r') as ml_file:
    ml = [line.strip() for line in ml_file]

with open('data/results-11-04-19.json') as result_file:
    result = js.load(result_file)

def get_mails():
    mails = []
    for p in result:
        time = sum(x * int(t) for x, t in zip([60, 1], p['time'].split(":")))
        if (time > 100 and not p['email'].strip()=='Anonymous User' and not p['email'].strip() in ml):
            mails.append(p['email'].strip())

    with open('data/lista_mail.txt', 'w') as f:
        for item in mails:
            f.write(item + ', ')

    return mails

def get_binary_scores(mails, task_num, output_file):
    openness = []
    conscientiousness = []
    extraversion = []
    agreeableness = []
    neuroticism = []

    for p in result:
        openness.append(p['openness'])
        conscientiousness.append(p['coscientiousness'])
        extraversion.append(p['extraversion'])
        agreeableness.append(p['agreeableness'])
        neuroticism.append(p['neuroticism'])

    facts = {'1': 1, '2': 0.5, '3': 0}
    fact = facts[task_num]

这怎么了?

我应该对名称进行任何更改吗?

mailcorpus.json文件:

[
   {
      "id":12,
      "mailing_list_url":"12",
      "type_of_recipient":"From",
      "email_address":"test@test.org",
      "message_body":"Here is one text to test sentiment and feel happy",
      "is_response_of":"before"
   },
   {
      "id":21,
      "mailing_list_url":"21",
      "type_of_recipient":"From",
      "email_address":"test@gmail.com",
      "message_body":"Here is one text to test sentiment and feel happy and feel fine",
      "is_response_of":"before"
   },
   {
      "id":21,
      "mailing_list_url":"23",
      "type_of_recipient":"From",
      "email_address":"23@gmail.com",
      "message_body":"Not feel so good for this code",
      "is_response_of":"after"
   }
]

json文件是我用来复制存储库步骤的示例文件

到存储库的链接:https://github.com/collab-uniba/Personality-Recognition-in-SD

0 个答案:

没有答案