【问题标题】:How do I delete [ a list of ] rows from a DataFrame in Pandas?如何从 Pandas 的 DataFrame 中删除 [ a list of ] 行?
【发布时间】:2021-01-11 03:07:03
【问题描述】:

我有一个存储在名为 big_teams 的变量中的足球队列表。我有一个足球联赛多个赛季所有比赛的数据集。我要做的是创建两个新的数据框,一个用于大团队,一个用于小团队。我不确定我的缺陷在哪里,因为我对编码和 python 还很陌生。

big_teams = []
small_teams = []

    for team in different_teams:
        if n_games[team] > np.average(n_games):
            big_teams.append(team)
        elif n_games[team] < np.average(n_games):
            small_teams.append(team)

上面的代码有效,并且生成了两个新列表,每个列表都有不同的团队。

我的问题在于下面的代码,我曾希望它会创建两个新数据帧,或者更准确地说,从现有数据帧中删除我不想要的内容

big_df = pd.DataFrame(df)
small_df = pd.DataFrame(df)

    for team in df['HomeTeam']:
        if team in big_teams == True:
            df['HomeTeam'].drop(team)
        elif team in small_teams == True:
            df['HomeTeam'].drop(team)

提前致谢

【问题讨论】:

    标签: python pandas list dataframe


    【解决方案1】:

    你可以isin

    df = df[~df['HomTeam'].isin(big_teams+ small_teams)]
    

    【讨论】:

      猜你喜欢
      • 2020-09-15
      • 2017-09-25
      • 1970-01-01
      • 2022-12-27
      • 2012-09-14
      • 2022-12-02
      • 1970-01-01
      • 2018-01-11
      • 2018-05-01
      相关资源
      最近更新 更多