Как реализовать код для управления файлами, которые запускаются в parellel? - PullRequest
0 голосов
/ 12 ноября 2018

Я пытаюсь загрузить 10 зависимых каталогов, которые содержат кучу файлов JSON, структура показана ниже:

5 events which divided into 2 categories

for fpathe1,dirs1,fs1 in os.walk('../input/charliehebdo/rumours/'):
 for f in fs1:
    with open(os.path.join(fpathe1,f)) as dir_loc:
        data.append(json.loads(dir_loc.read()))
        charliehebdo = pd.DataFrame(data)
        charliehebdo['label'] = 'TRUE'
        charliehebdo['event'] = 'charliehebdo'
for fpathe2,dirs2,fs2 in os.walk('../input/charliehebdo/non-rumours/'):
     for f in fs2:
        with open(os.path.join(fpathe2,f)) as dir_loc:
            data.append(json.loads(dir_loc.read()))
            nonRumourcharliehebdo = pd.DataFrame(data)
            nonRumourcharliehebdo['label'] = 'FALSE'
            nonRumourcharliehebdo['event'] = 'charliehebdo'
for fpathe3,dirs3,fs3 in os.walk('../input/ferguson/rumours/'):
 for f in fs3:
    with open(os.path.join(fpathe3,f)) as dir_loc:
        data.append(json.loads(dir_loc.read()))
        ferguson = pd.DataFrame(data)
        ferguson['label'] = 'TRUE'
        ferguson['event'] = 'ferguson'
for fpathe4,dirs4,fs4 in os.walk('../input/ferguson/non-rumours/'):
     for f in fs3:
        with open(os.path.join(fpathe3,f)) as dir_loc:
            data.append(json.loads(dir_loc.read()))
            nonRumourferguson = pd.DataFrame(data)
            nonRumourferguson['label'] = 'FALSE'
            nonRumourferguson['event'] = 'ferguson'

Однако пример кода занимает очень много времени (я работал на своем ноутбуке с Intel Core i7-4720HQ и стоил мне 24 часа +), поэтому мне интересно, есть ли какое-нибудь лучшее решение?

ну, похоже, моя структура структуры сбивает вас с толку или вводит в заблуждение, поэтому вот набор данных. набор необработанных данных

Я намеревался проиллюстрировать набор данных рисунком, но он оказывается хуже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...