签入数据帧中的char

时间:2017-01-09 08:30:48

标签: python pandas

我想将pandas dataframe保存为csv文件,但我找不到好的分隔符:如果我保存dataframe并加载已保存的文件,我会混合列。

所以我需要检查我的dataframe中是否有一些字符会导致此问题。

我试过了:

for col in df.columns:
    if df[col].str.contains("|",na=False):
        print df[df[col].str.contains(",",na=False)]

与","是想要的分隔符,但它返回:

ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

如果我使用.any().all(),则会返回整个dataframe。我的代码出了什么问题?

1 个答案:

答案 0 :(得分:1)

您需要添加any以检查至少一个True,因为比较boolean Series,而不是标量值TrueFalse

if df[col].str.contains("|",na=False).any():