Android-Exoplayer: Surfaceview отображается поверх всплывающих окон

Вот еще один способ обмануть этого кота, используя словарь для отображения новых значений на клавиши в списке:

def map_values(row, values_dict):
    return values_dict[row]

values_dict = {'A': 1, 'B': 2, 'C': 3, 'D': 4}

df = pd.DataFrame({'INDICATOR': ['A', 'B', 'C', 'D'], 'VALUE': [10, 9, 8, 7]})

df['NEW_VALUE'] = df['INDICATOR'].apply(map_values, args = (values_dict,))

Как это выглядит:

df
Out[2]: 
  INDICATOR  VALUE  NEW_VALUE
0         A     10          1
1         B      9          2
2         C      8          3
3         D      7          4

Этот подход может быть очень сильным, когда у вас есть много операторов ifelse -типов, чтобы сделать (то есть множество уникальных значений для замены).

И, конечно же, вы всегда можете это сделать:

df['NEW_VALUE'] = df['INDICATOR'].map(values_dict)

Но этот подход более чем в три раза медленнее, чем подход apply сверху, на моей машине.

И вы также можете сделать это, используя dict.get:

df['NEW_VALUE'] = [values_dict.get(v, None) for v in df['INDICATOR']]
0
задан kirchhoff 16 January 2019 в 08:38
поделиться