#python #python-3.x #pandas #dataframe #arraylist
Вопрос:
Я пытаюсь вернуть все данные с моего листа Excel из столбца ТУРНИР, в котором есть строка FIFA. Я все время не получаю никаких результатов и не знаю, как это исправить. Ниже приведен образец данных из моего excel. Любая информация была бы полезна, спасибо
import pandas as pd
import numpy as np
filename = ("results.csv")
df = pd.read_csv(filename)
#convert to datetime format
df['date'] = pd.to_datetime(df['date'], format='%Y/%M/%D')
#Which country has scored the most goals in FIFA events (qualifiers, cups, etc.) since 2010?
#To get the most goals by sum
df['total_score'] = df['home_score'] df['away_score']
#Not sure how to check all data with the string "FIFA" in the column "Tournament"
sub_df = df[(df['date'].dt.year >= 2010)]
if "FIFA" in df['tournament']:
sub_df2 = sub_df[sub_df['total_score'] == sub_df['total_score'].max()]
print(sub_df2)
else:
print("no results")
Ответ №1:
Вы можете использовать Series.str.contains
, чтобы проверить, существует ли подстрока в значении, а затем использовать маскировку, чтобы получить только такие вхождения:
>>> df[df['tournament'].str.contains('FIFA')]
Комментарии:
1. как бы я использовал это в состоянии «ЕСЛИ»? Спасибо