Python 打印两列相同的所有行
我下载了一个关于国际足球比赛结果的数据集,但我在可视化一件事上遇到了问题。列名称如下所示: 日期 主队 客队 本垒打分数 客场得分 比赛 城市(比赛发生地) 国家(比赛发生地) 中立(如果比赛发生在主队所在国以外,则为真,否则为假。) 我想弄清楚比分和比赛时间之间的关系。为此,我想打印(然后计数)所有行,其中:Python 打印两列相同的所有行,python,pandas,dataframe,Python,Pandas,Dataframe,我下载了一个关于国际足球比赛结果的数据集,但我在可视化一件事上遇到了问题。列名称如下所示: 日期 主队 客队 本垒打分数 客场得分 比赛 城市(比赛发生地) 国家(比赛发生地) 中立(如果比赛发生在主队所在国以外,则为真,否则为假。) 我想弄清楚比分和比赛时间之间的关系。为此,我想打印(然后计数)所有行,其中: 主队==城市和主队得分>客场得分 客场球队==城市和客场得分>主场得分 另外,如果你们知道如何在不产生两个单独条件的情况下组合这些条件,那也很高兴知道 如果有人感兴趣,可在以下位置获
- 主队==城市和主队得分>客场得分
- 客场球队==城市和客场得分>主场得分
for row in df:
if df['home_team'] == df['city'] and home_score > away_score:
print (row)
这是我的密码:
由于某种原因,True/False是bool值,所以我将其更改为str
booleandf = df.select_dtypes(include=[bool])
df_str = {True: 'TRUE', False: 'FALSE'}
for column in booleandf:
df['neutral'] = df['neutral'].map(df_str)
打印中性=='假的所有行
df[df['neutral'].str.contains("FALSE")]
遇到错误:解析时出现意外的EOFIIUC这将获得要可视化的行。试试看
df.loc[(df['neutral']=="FALSE") & (df['home_score'] > df['away_score'])]
将
母国团队
与城市
进行比较是行不通的,因为一个是国家,另一个是国内城市。你是想解决主客场比赛的全球比分问题吗?你想得太多了。通常,如果您在数据帧上使用python循环,那么您就做错了。在这种情况下,您可以通过以下方式获得所需的计数:
home_team_win_count = len(df[(df.home_team == df.country) & (df.home_score > df.away_score)])
home_team_win_count = len(df[(df.home_team == df.country) & (df.home_score > df.away_score)])