gpt4 book ai didi

python - 如何在Python中将数组附加到文本文件

转载 作者:行者123 更新时间:2023-12-01 08:19:03 24 4
gpt4 key购买 nike

我正在尝试创建一个包含多行作为标题的文件,并附加一列数字。我在 header 后附加 numpy.matrix 时遇到一些问题。我写了如下代码enter image description here

import numpy as np
import pandas as pd
import xlrd

df = pd.read_csv('Region_SGeMS.csv', header=None)

matrix = np.asmatrix(df)

#print(matrix)

s = np.shape(matrix)
print(s)
row = s[0]
col = s[1]

a = np.flip(matrix, 0)

b = np.reshape(a, (400, 1))

print(b)

f = open('Region.txt', 'w')

f.write(str(s[0]))
f.write(' ')
f.write(str(s[1]))
f.write(' 1 \n')
f.write('1 \n')
f.write('facies \n')

with open('Region.txt', 'a+') as outfile:
np.savetxt(outfile,b)

但是,突出显示的数字应该是 2,而不是 0。我还附上了原始 Excel 文件的屏幕截图。 Here is a screenshot of my result

最佳答案

请注意numpy.savetxt如果您允许的话,将为您附加一个 header 字符串到文件中。例如:

import numpy as np
# Recreate the original csv data
one_block = np.ones((10,10))
A = np.block([ [0*one_block,one_block],[2*one_block,3*one_block] ])
M,N = A.shape
# Recreate b
a = np.flip(A,0)
b = a.reshape(400,1)
hdr_str = """{M:d} {N:d} 1
1
facies""".format(M=M,N=N)
outfile = 'Region.txt'
np.savetxt(outfile,b,header=hdr_str,comments='')

下面是我尝试重现您的问题的屏幕截图。没有虚假的 0

enter image description here

关于python - 如何在Python中将数组附加到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54798453/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com