[英]Saving arrays of float in a .txt file in columns
我每个都有 15 个 arrays 的浮点数 (130 x 150),称为 (a,b,c,d,..,q)。 我想将这些保存到名为 array.txt 的.txt 文件中。 格式应为 19500 行的 15 列,其中数组 a 占据整个第一列,b 占据第二列,依此类推。每个数组中的元素应逐行选取。
有人可以帮我弄这个吗? 我该怎么做? 我正在考虑为 arrays 的每个元素使用 15 个 for 循环,但我认为这并不聪明,可能有更好的方法。
谢谢。
import numpy as np
import pandas as pd
a = [1,2,3,4,5]
b = [6,7,8,9,10]
c = [11,12,13,14,15]
l = zip(a,b,c)
df = pd.DataFrame(l, columns=["a","b","c"])
np.savetxt(r'array.txt', df.values, fmt='%f')
这将组合列表“a”、“b”和“c”并将它们写入名为 array.txt 的文本文件
我通常也会推荐使用 Pandas 进行这些操作,但如果您需要使用 Numpy,您可以尝试这样的操作:
import numpy as np
import pandas as pd
# Set up dummy-problem
data = {key: np.random.random((130, 150)) for key in "ABCDEFGHIJKLMNOPQ"}
# You would probably create a list containing the variables [a, b, c, ..., q]
# Concatenate results and save data
result = np.concatenate([a.flatten("F")[:, None] for a in data.values()], axis=1)
np.savetxt("data.txt", result)
# PS! To read as a Pandas DataFrame, use
pd.DataFrame({key: a.flatten("F") for key, a in data.items()})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.