保存从循环阵列在列一个文本文件

问题描述 投票:1回答:1

我创建其中我想要使用一个在给定为从另一个文件的索引的阵列的特定行来替换零零(587x1)的阵列。这一部分在我的代码工作正常为止。

后来,我要保存一个txt文件为列彼此相邻的所有这些新创建的阵列,由制表符分隔。我的代码做什么,但是,是覆盖阵列。如何管理在一个文件中相邻追加呢?

非常感谢你的帮助!

更新:我设法所有阵列写入一个文件,但是,他们现在只是印在彼此的顶部 - 我怎么把它们写到旁边显示对方的列?

import os
import numpy as np
participants = ['001']
for vp in participants:
   with open('file.txt') as f:
      content = f.readlines()
   content = [x.strip() for x in content]
   content = map(int, content)
f = open(outfile.txt, 'w')       
for line in content:
      with open('outfile.txt', 'a') as f:
            arr = np.zeros((587, 1), dtype = int)
            np.put(arr, [line], [1])
            np.savetxt(f, arr, fmt='%i')
f.close()
python arrays numpy
1个回答
0
投票

你可以试试这个代码,增加了一个给定的(n,1)形阵列为包含整数(n,m)形矩阵一个文本列:

def appendAsColumn(arr):
    fileContent = np.loadtxt('outfile.txt', dtype = int, ndmin = 2)
    fileContent = np.hstack((fileContent, arr.astype(int)))
    np.savetxt('outfile.txt', fileContent, fmt='%i')

请注意,这不会对文件的第一个条目时,您将需要调用

np.savetxt('outfile.txt', arr, fmt='%i')

为第一列。

© www.soinside.com 2019 - 2024. All rights reserved.