首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >熊猫将元组保存为列中的值。

熊猫将元组保存为列中的值。
EN

Stack Overflow用户
提问于 2020-03-07 12:33:30
回答 1查看 934关注 0票数 1

我正在处理一个DataFrame,我需要将元组保存为特定列中的值。

代码语言:javascript
复制
df['column'] = (423423,41231,5345)

在将DataFrame保存到.csv之后,如果我想要返回值,我就不能再次使用元组,因为它已经被保存为字符串。

是否有任何方法将元组(或一般情况下的对象)保存为值?

在熊猫或其他库中是否有特定的功能,允许将以前的元组(保存为字符串)再次转换为元组?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-07 12:43:47

csv不能存储python对象,您应该使用泡菜to_pickleread_pickle

示例:

代码语言:javascript
复制
df = pd.DataFrame({'A':[(1,2,3),(4,5,6),(7,8,9)],'B':list('xyz')})

代码语言:javascript
复制
print(df)
           A  B
0  (1, 2, 3)  x
1  (4, 5, 6)  y
2  (7, 8, 9)  z

代码语言:javascript
复制
df.to_pickle('test.pkl')
new_df = pd.read_pickle('test.pkl')
print(new_df)

           A  B
0  (1, 2, 3)  x
1  (4, 5, 6)  y
2  (7, 8, 9)  z

type(new_df.loc[0,'A'])
#tuple

对于csv,当您读取csv时,这些值以字符串的形式返回,在导入ast.literal_eval后,您可以对其应用df['Col_name'].apply(ast.literal_eval)这样的字符串。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60577572

复制
相关文章

相似问题

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