我有一个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
知道为什么以及如何使其发挥作用?
谢谢
答案 0 :(得分:1)
您可以使用applymap
和lambda
函数将数据框转换为蒙版。
如果df
是您的输入数据框,则可以执行以下操作,如果字符串1
在其中,则将所有字段转换为word
,否则转换为0
。
mask = df.applymap(lambda x: 1 if word in str(x) else 0)