Python: загрузка файлов .txt в разные списки - PullRequest
0 голосов
/ 05 ноября 2018

Пожалуйста, извините за мой глупый вопрос, поскольку я действительно новичок в Python.

У меня есть 20 различных файлов .txt (например, "myfile_%s" с s, который был приписан целому числу в диапазоне = 1,21). Поэтому я загружаю их следующим образом:

runs=range(1,21)

for i in runs:

     Myfile=np.loadtxt("myfile_%s.txt" %i, delimiter=',', unpack=True)

Следовательно, они загружаются в переменную типа "float64". Я хотел бы загрузить их в 20 различных списков (чтобы найти максимальное значение каждого и т. Д.).

Заранее спасибо!

PS: Я был бы рад услышать любые рекомендации для начинающих по питону.

Ответы [ 2 ]

0 голосов
/ 05 ноября 2018

Вы можете разделить, используя разделитель, и загрузить в собственный список Python:

my_files = []

for i in range(1,21):
    with open("my_file_{0}.txt".format(i), 'r') as f:
        my_files.append(f.read().split(','))

Теперь у вас есть список списков. Вы можете получить максимальное значение в целом или максимальное значение для каждого списка, например:

# max of each
max_values = [max(map(float,my_list)) for my_list in my_files]

# max overall
max_overall = max(max_values)
0 голосов
/ 05 ноября 2018

Ваши списки равной длины? Если да, вы можете сделать все в одном массиве:

a = np.zeros((100,20))

for i in range(1,21):
  a[i-1,:]=np.loadtxt("myfile_%s.txt" %i, delimiter=',', unpack=True)

Теперь вы можете выполнять все numpy функции в результирующем массиве, такие как

b = np.sum(a,axis=0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...