将嵌套列表/数组保存为CSV以便日后轻松加载的最佳方法

时间:2019-06-13 08:22:21

标签: python csv numpy dataframe

首先,让我为html表道歉。这是使这张倾斜的桌子看起来不错的唯一方法。

现在,对于这个问题,我正在尝试找到一种最佳方法来将一组坐标(表中的坐标列)保存在一个csv文件的列中,以供以后使用。

此刻,在像这样[UnmanagedFunctionPointer(CallingConvention.Cdecl)]使用dask读取CSV之后,列表是这样的字符串表示形式:dd.read_csv(),我在其中使用'[[...][...]..]]'来转换字符串表示形式列表中的所有内容,但是如果我能找到正确的方法来保存数组,则效率很低。

结论:
如何将numpy数组保存在CSV列中,以便以后最容易地重新加载 as numpy array ?或如何从CSV列中提取numpy数组?

修改:
我正在使用多重处理,因此下表中的每个条目都首先保存为列表列表,然后在所有迭代之后,该列表将转换为数据框,并另存为CSV文件

ast.literal_eval

1 个答案:

答案 0 :(得分:0)

我会将列存储为单独的npy文件。

我会在节省时间使用:

df.assign(Coordinates=np.nan).to_csv(...)   # save all columns except coordinates to a csv file
np.save('... .npy', df['Coordinates'].values) # save coordinates as a npy file

然后在加载时:

df = pd.read_csv(...)
df['coordinates'] = np.load('... .npy')

由于熊猫内部使用numpy ndarrays作为其列,因此可以直接保存和加载包含其他numpy数组的对象numpy数组。

相关问题