繁体   English   中英

从熊猫数据框中的字符串列表中删除单引号

[英]Remove single quote from list of strings in pandas dataframe

我有一个如下所示的 pandas 数据框。 我想去掉列表中字符串的单引号。 任何建议表示赞赏。

    name      relations
0   mary      ['andrew', 'jane']
1   jack      ['priscilla', 'mary']
2   jason     ['howard', 'jackie']

预期产出

    name      relations
0   mary      [andrew, jane]
1   jack      [priscilla, mary]
2   jason     [howard, jackie]

如果未定义,该字符串将成为一个对象并显示错误。 但它应该做你需要的。

df['relations'] = df['relations'].apply(lambda x: list(map(eval,x)))

我遇到这个问题的主要原因是我的列表作为字符串存储在数据框中。

做的时候

for i, l in enumerate(df[0]):
    print("list",i,"is",type(l))

我的输出是

list 0 is <class 'str'>
list 1 is <class 'str'>
list 2 is <class 'str'>

当我执行以下代码时 -

df['relations'] = df['relations'].apply(eval)

我得到了一份清单,现在它是正确的。

的输出

for i, l in enumerate(df[0]):
    print("list",i,"is",type(l))

给我吗

list 0 is <class 'list'>
list 1 is <class 'list'>
list 2 is <class 'list'>

再次执行 df 基本上会得到我想要的 -> 列表中没有单引号

name          relations
0   mary      [andrew, jane]
1   jack      [priscilla, mary]
2   jason     [howard, jackie]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM