例如,我有不同长度的numpy数组
a = [1,2,3,4]
b = [5,6]
c = [7,7,7]
d = [12,24,43,54,66,77,88]
它们被包装在一个列表(或字典)中
the_list = [a,b,c,d]
每个数组长约500个元素,列表长约1000-10000个数组。
我要将此列表保存到磁盘上的单个文件,并按重要性顺序满足以下要求:
像这样使用熊猫:
df = pd.DataFrame(the_list)
df.to_csv(path, header=None, index=False)
仅写入每个数组的第一个元素。 我猜测有一种更好的(工作)方式,可以用熊猫,泡菜或其他方式
答案 0 :(得分:0)
我可能会选择numpy.savez
。这不是一种人类可读的格式,因此也许对您不起作用,但是它确实很容易使用(您使用numpy.load
来读取文件)。
如果让人类易于理解的确非常重要,那么我将使用json-这是一种语言不可知的交换格式,已广为人知并广泛使用(可能是由于它在Web开发中很流行)。您可以使用json
模块中的内置功能编写自己的编码器/解码器(这确实很容易),也可以让类似json-tricks
的东西为您工作。
答案 1 :(得分:0)
这在我的电脑中有效:
the_list = [a,b,c,d]
df_list = pd.DataFrame({ i:pd.Series(value) for i, value in enumerate(the_list) })
df_list.to_csv('./df_list.csv')