Загрузка таблицы HTML из значений JSON с помощью JavaScript

Использование:

g = df_scores.groupby('Player').cumcount().add(1)
df = df_scores.set_index(['Player',g]).unstack().sort_index(level=1, axis=1)
df.columns = ['{}-{}'.format(j, i) for i, j in df.columns]
print (df)
        1-INNG1  1-INNG2  2-INNG1  2-INNG2  3-INNG1  3-INNG2  4-INNG1  4-INNG2
Player                                                                        
RAHUL      55.0     35.0     75.0     25.0      NaN      NaN      NaN      NaN
RICKY      75.0     25.0     55.0     45.0     45.0     65.0     17.0     71.0
SACHIN     70.0     50.0     10.0     20.0      NaN      NaN      NaN      NaN
SAURBH    100.0    100.0      NaN      NaN      NaN      NaN      NaN      NaN
STEVE       7.0     17.0      NaN      NaN      NaN      NaN      NaN      NaN

df_result = df_team.join(df, on='Player')
print (df_result)
  Country  Player  1-INNG1  1-INNG2  2-INNG1  2-INNG2  3-INNG1  3-INNG2  \
0   India  SACHIN     70.0     50.0     10.0     20.0      NaN      NaN   
1   India   RAHUL     55.0     35.0     75.0     25.0      NaN      NaN   
2   India  SAURBH    100.0    100.0      NaN      NaN      NaN      NaN   
3     AUS   STEVE      7.0     17.0      NaN      NaN      NaN      NaN   
4     AUS    SHEN      NaN      NaN      NaN      NaN      NaN      NaN   
5     AUS   RICKY     75.0     25.0     55.0     45.0     45.0     65.0   

   4-INNG1  4-INNG2  
0      NaN      NaN  
1      NaN      NaN  
2      NaN      NaN  
3      NaN      NaN  
4      NaN      NaN  
5     17.0     71.0  

Объяснение:

  1. Сначала подсчитайте уникальные значения для каждой группы по cumcount
  2. ] Создайте MultiIndex с помощью set_index , измените форму unstack и измените порядок первого уровня на sort_index
  3. Сгладить MultiIndex по усмотрению списка
  4. Последний join к оригиналу DataFrame

0
задан J P 19 January 2019 в 20:16
поделиться