Pandas 使用np.select和np.where替换基于条件的df中的值
我有一个数据项列表,我想通过df的col循环,用单词“database”替换匹配数据项中任何项的所有实例。我试过使用np.select:Pandas 使用np.select和np.where替换基于条件的df中的值,pandas,replace,np,Pandas,Replace,Np,我有一个数据项列表,我想通过df的col循环,用单词“database”替换匹配数据项中任何项的所有实例。我试过使用np.select: discrete_distributed_bar["profile_standardized"] = np.select( [discrete_distributed_bar["profile_standardized"].isin(data_terms)], ["database"]
discrete_distributed_bar["profile_standardized"] = np.select(
[discrete_distributed_bar["profile_standardized"].isin(data_terms)],
["database"],
default=discrete_distributed_bar.profile_standardized,
)
对于np,其中:
for index, row in discrete_distributed_bar["profile_standardized"].items():
np.where(
discrete_distributed_bar["profile_standardized"].isin(data_terms),
"database",
row,
)
但这种替代并没有真正发生。我错过了什么
谢谢你的帮助 这里似乎应该简化解决方案:
discrete_distributed_bar["profile_standardized"] = discrete_distributed_bar["profile_standardized"].replace(data_terms, 'database')
但我认为数据(例如空格)存在一些问题,请通过以下方式进行测试:
print (discrete_distributed_bar["profile_standardized"].isin(data_terms))
然后是可能的用途:
discrete_distributed_bar["profile_standardized"] = discrete_distributed_bar["profile_standardized"].str.strip().replace(data_terms, 'database')
你能提供一些数据样本吗?没有训练空格?如果测试
print(离散分布条[“profile\u standarized”].isin(数据项))
返回匹配的正确True
?一定有其他原因,因为在多次尝试失败后,它突然起作用?非常感谢你的帮助@耶斯雷尔