首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >保存和加载列表值?

保存和加载列表值?
EN

Stack Overflow用户
提问于 2022-02-20 05:28:04
回答 3查看 299关注 0票数 1

我有一个dataframe,其中一个列包含一个值列表:

示例:type(df['col_list'].values[0]) = list

我将此数据存储为csv文件(df.to_csv('my_file.csv'))。

加载dataframe (df = pd.read_csv('my_file.csv'))时,包含值列表的列更改为string类型:type(df['col_list'].values[0]) = str

当转换为list (list(df['col_list'].values[0])时,我得到的是字符列表,而不是值列表。

如何保存/加载其中一个列包含值列表的数据?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-02-20 05:31:05

这是由于将表保存为CSV并序列化列表的值。csv格式无法按原样保存列表对象。尝试以另一种格式保存df.to_pickle('test.df')。然后,您可以使用泡菜将其读回数据格式。

阅读有关保存到腌制这里的更多信息

票数 1
EN

Stack Overflow用户

发布于 2022-02-20 05:30:40

使用JSONHDF文件格式代替CSV。CSV文件格式对于存储列表或对象集合确实不方便。

票数 2
EN

Stack Overflow用户

发布于 2022-02-20 05:32:24

我认为阿努拉格的建议很好。但万一你想保持原样,这就能完成任务了

代码语言:javascript
复制
import json
df['col_list'] = df['col_list'].apply(json.loads)

如果您在col_list之前将pd.to_csv转换成JSON文本,这会更好

代码语言:javascript
复制
df['col_list'] = df['col_list'].apply(json.dumps)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71191595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档