分享
三行代码  ›  专栏  ›  技术社区  ›  nasc

如何检查数据帧中的一个单元格是否是来自不同列但相同行的另一个单元格的子字符串

  •  0
  • nasc  · 技术社区  · 5 天前

    这是起跑台

    身份证件 名称 结果
    大的 -------
    2. AB型 -------
    3. -------
    4. 提特 -------

    我希望结果是

    身份证件 名称
    1. 大的
    2. ABCDE 1.
    两个
    提特 提赫

    所以结果中的值 1 smaller 是来自 Name 不然呢 0

    我试过这样的方法

    new_df['Animation'] = new_df['Animation'].apply(lambda x: return if x in new_df['Genre'])
    

    for each in list(gen):
       if each in new_df['Genre']:
           new_df[each] = 1
       else:
           new_df[each] = 0
    new_df
    

    还有这个

    for each in list(gen):
        new_df.loc[each in new_df.Genre, each] = 1
    new_df
    

    我得到的只是语法错误,有人能告诉我该怎么做吗?

    1 回复  |  直到 5 天前
        1
  •  2
  •   not_speshal    5 天前

    尝试:

    df["result"] = df.apply(lambda x: 1*(x["smaller"] in x["Name"]), axis=1)
    >>> df
       id     Name smaller  result
    0   1  NAMEBIG     BIG       1
    1   2    ABCDE      AB       1
    2   3      Two      Ti       0
    3   4     Tiht     Tih       1