pandas 列上的 LOC 函数

LOC function on pandas column

我创建了一个代码,如下所示:

check = ['jonge man']
data.loc[
    data['Zoekterm'].str.contains(
    f"{'|'.join(check)}"
    ),"Zoekterm_new",
    data['Zoekterm']

我收到太多索引器错误 我做错了什么

使用 DataFrame.loc 和列名的第二个参数,例如:

data.loc[data['Zoekterm'].str.contains(f"{'|'.join(check)}"), "Zoekterm_new"]

如果需要分配值添加 = - 所以对于 Zoekterm_new 如果匹配条件则添加来自 Zoekterm 的数据,否则 NaN:

data.loc[data['Zoekterm'].str.contains(f"{'|'.join(check)}"), "Zoekterm_new"] = data['Zoekterm']

像这样工作:

data["Zoekterm_new"] = np.where(data['Zoekterm'].str.contains(f"{'|'.join(check)}"), data['Zoekterm'], np.NaN)