#python #pandas #dataframe #combinations #itertools
#python #pandas #фрейм данных #комбинации #python-itertools
Вопрос:
[Обновление: мне нужны результаты, а не светильники. Я добавил код для моей таблицы очков, в которой отображается текущая таблица, на основе которой я хочу определить вероятность попадания команды в топ-4]
Я пытаюсь определить возможные комбинации результатов для матча спортивной лиги.
У меня есть мои данные в виде таблиц CSV, как показано ниже.
Приведенный ниже столбец результатов будет принимать значение либо команды хозяев, либо команды гостей (вероятность 0,5)
Я хочу создать отдельный список со всеми возможными результатами, а затем объединить результаты, чтобы увидеть вероятность попадания команды в топ-4, учитывая таблицу очков, опубликованную как (df). Я пытаюсь увидеть вероятность, учитывая все результаты.
Совсем недавно начал кодировать на Python и испытывал трудности с этим. Любая помощь приветствуется
import numpy as np
import matplotlib as plt
import seaborn_table as sb
import pandas as pd
from itertools import combinations
df = pd.read_csv('ipltable.csv')
df2 = pd.read_csv('ipl2.csv')
print(df2)
##X = df2[['Home']].assign(key=1).merge(df2[['Away']].assign(key=1))
#print(X)
#Y = pd.MultiIndex.from_product([df2.Home,df2.Away]).to_frame()
#print(Y)
print(df)
Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
Fixture Home Away Outcome
0 1 RCB CSK NaN
1 2 RR DC NaN
2 3 CSK SRH NaN
3 4 RCB KXIP NaN
4 5 KKR RR NaN
5 6 CSK MI NaN
6 7 RR SRH NaN
7 8 DC RCB NaN
8 9 KKR MI NaN
9 10 SRH KXIP NaN
10 12 CSK DC NaN
11 13 MI SRH NaN
12 14 KXIP KKR NaN
13 15 DC RR NaN
14 16 RCB SRH NaN
15 17 KXIP CSK NaN
16 18 MI KKR NaN
Team Name Matches Points NRR W L
0 CSK 9 14 0.101 7 2
1 MI 10 12 0.357 6 4
2 DC 10 12 0.160 6 4
3 SRH 9 10 0.736 5 5
4 KXIP 10 10 -0.044 5 5
5 KKR 10 8 -0.013 4 6
6 RR 9 6 -0.474 3 6
7 RCB 9 4 -0.938 2 7
Ответ №1:
Если вам нужен весь продукт из двух списков команд
Метод 1 Затем присваивает новое значение merge
df[['Home']].assign(key=1).merge(df[['Away']].assign(key=1))
Способ 2 pd.MultiIndex
pd.MultiIndex.from_product([df.Home,df.Away]).to_frame()
Метод 3 itertools.product
pd.DataFrame(list(itertools.product(df.Home.tolist(),df.Away.tolist())))
Комментарии:
1. Спасибо за ваш комментарий! Тем не менее, я пытался определить комбинацию результатов матча, которая станет победителем, будь то команда хозяев или команда гостей для каждого из 18 матчей. Мне нужна комбинация всех возможных результатов, чтобы я мог определить вероятность попадания команды в топ-4 (как вы видите в обновлении, я добавил таблицу очков)