Нет способа увеличить внешний цикл перед внутренним циклом - сначала увеличивая внешний цикл, можно просто перейти к новой версии внутреннего цикла (в основном, начиная с начала).Я думаю, что вы хотите изменить порядок своих циклов.
Вот пример:
data_files = glob.glob('4e3_2048_*.ksz_cl.txt')
dfs = []
for file in data_files:
df = pd.read_csv(file, sep=" ", header=None)
df.columns = ['a', 'b', 'c']
dfs.append(df)
cls = []
for i in range(len(dfs[0])):
row = []
for df in dfs:
row.append(df['c'][i])
cls.append(row)
Первый цикл - это просто чтение всех файлов. Логика этого первого цикламожет быть просто включен в самый внутренний цикл (for df in dfs
), который вы, возможно, захотите сделать, если ваши файлы очень большие и не могут быть все одновременно сохранены в памяти.Полезно разделить эти циклы, чтобы вы знали, сколько строк вам нужно сделать.
Вот пример с двумя циклами:
data_files = glob.glob('4e3_2048_*.ksz_cl.txt')
first_file = pd.read_csv(data_files[0], sep=" ", header=None) #for the loop max val
cls = []
for i in range(len(first_file)):
row = []
for file in data_files:
df = pd.read_csv(file, sep=" ", header=None)
df.columns = ['a', 'b', 'c']
row.append(df['c'][i])
cls.append(row)
Возможно, вы также захотитедобавить некоторую обработку ошибок (IndexError
).