Python Pandas错误:pandas只能使用带字符串值的.str访问器

时间:2017-01-17 08:34:06

标签: python excel pandas dataframe

我有一个pandas脚本,我得到一个excel表并把它放在一个pandas数据帧上,然后我在这个数据帧中寻找一个特定的单词,然后我创建了一个df的1和0的掩码,我找到了这个词。

我没有excel表格的特定格式,因此我按原样获取所有信息,然后查找该单词并使用此行创建一个掩码,产生错误:

package com.gfp.rest;

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

@ApplicationPath("api/v1")
public class RestApplication extends Application
{
public Set<Class<?>> getClasses() {
        return getRestClasses();
    }

    private Set<Class<?>> getRestClasses() {
        Set<Class<?>> resources = new java.util.HashSet<Class<?>>();        
        resources.add(AuthenticationFilter.class);
        return resources;    
    }
}

此行有时会产生此错误:

  

pandas只能使用带有字符串值的.str访问器   pandas中的np.object_ dtype

知道为什么以及如何使其发挥作用?

谢谢

1 个答案:

答案 0 :(得分:1)

您可以使用applymaplambda函数将数据框转换为蒙版。 如果df是您的输入数据框,则可以执行以下操作,如果字符串1在其中,则将所有字段转换为word,否则转换为0

mask = df.applymap(lambda x: 1 if word in str(x) else 0)