此问题已在此处有答案:
How to use ast.literal_eval in a pandas dataframe and handle exceptions(2个答案)
14小时前关闭
所以我有这个简单的代码
import ast
df = df["strings"].apply(ast.literal_eval)
它只是将字符串形式的列表中的一列转换回字符串。我得到一个错误ValueError: malformed node or string: 0
,我希望apply
跳过它失败的行,只返回它成功的行的数据框架。我该怎么做?
2条答案
按热度按时间ryevplcw1#
我假设“字符串形式”是指单个字符串的列表(如
["foo"]
)。您可以使用在数据框架上应用的简单 Package 函数来完成您想要的任务:
然而,最好先评估数据框架中的行为什么会导致错误。垃圾进,垃圾出。
dfuffjeb2#
你可以将ast.literal_eval封装在一个try/except块中。考虑以下几点: