Я написал некоторый код, который принимает набор данных и выполняет довольно сложные вычисления.Я написал код таким образом, что необходимо изменить только имя входных данных ('WTW_decades/1980wtw.txt'
в приведенном ниже коде), и на основе этого файла данных все переменные изменяются так, что он может проходить черезкод.Сегодня вечером я хочу, чтобы все данные проходили через один и тот же файл блокнота jupyter, без необходимости повторного ввода имени каждого отдельного набора данных.Мой код выглядит следующим образом:
import networkx as nx
import numpy as np
data = np.genfromtxt('WTW_decades/1980wtw.txt', dtype=[('a','|S5'),('b','|S5'),('amount','f8')], usemask=True)
print(data)
def create_edgelist_binary(): #creates a binary edgelist
el = [] #name of the edge list
for i in range(len(data)):
el.append([data[i][0].decode('UTF-8'), data[i][1].decode('UTF-8')])
return(el)
binary_edgelist = create_edgelist_binary()
H = nx.DiGraph() #The graph H is being created
H.add_edges_from(binary_edgelist) #Here the edgelist inputs the edges into H
B = nx.adjacency_matrix(H) #H is made into a np matrix.
И под этим фрагментом кода есть группа вычислений на основе набора данных, который помещается в переменную data
. Что я сейчас хочу сделать, так это в основном делать итерации, где каждый раз, когда файл ноутбука jupyter перезапускается и вывод очищается, а следующие имена файлов помещаются в переменную data
:
'WTW_decades/1950wtw.txt'
'WTW_decades/1960wtw.txt'
'WTW_decades/1970wtw.txt'
'WTW_decades/1980wtw.txt'
'WTW_decades/1980wtw.txt'
'WTW_decades/2000wtw.txt'
Спасибо за помощь!
PS для всех, кто заинтересован, данные отформатированы следующим образом:
USA CAN 11635.4768019
CAN USA 11214.5837810
USA CUB 2414.59680421
CUB USA 2536.43425763
USA HAI 132.913585553
HAI USA 157.281076237
USA DOM 227.060708653
... ... ...