代码之家  ›  专栏  ›  技术社区  ›  Tamar Geldiashvili

如何检查一行的数据是否在np内部的列表中。where()?

  •  -5
  • Tamar Geldiashvili  · 技术社区  · 6 年前
    developed_countries = ["NOR","AUS","CHE","DEU","DNK","SGP","NLD","IRL","ISL","CAN","USA","NZL","SWE","LIE","GBR"]
    
    recent_indicators['Developed'] = np.where(recent_indicators['CountryCode'] in developed_countries, 1, 0)
    

    “ValueError:序列的真值不明确。请使用a.empty, a、 bool()、a.item()、a.any()或a.all()。"

    最近的\u指标 是熊猫数据帧。如果发达国家提到了“CountryCode”,还有什么办法可以检查?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Vivek Kalyanarangan    6 年前

    您可以使用 .isin() 直接在熊猫过滤中-

    recent_indicators_filtered = recent_indicators[recent_indicators['CountryCode'].isin(developed_countries)]
    

    此外,您还可以得到一个布尔列,该列表示 True 如果开发-

    recent_indicators['Developed'] = recent_indicators['CountryCode'].isin(developed_countries)