Как обновить столбец фрейма данных в Pandas?

#python #pandas

#python #pandas

Вопрос:

У меня есть фрейм данных

 Col1 Col2
A    ...
C    ...
B    ...
X    ...
NaN  ...
D    ...
  

Я хочу обновить значения в Col1 to ord(Col1) - ord('A') 1 , игнорируя NaN . Как его обновить?

Ответ №1:

Попробуйте:

 df['Col1'] = df['Col1'].dropna().map(ord) - 66
  

Вывод:

    Col1 Col2
0  -1.0  ...
1   1.0  ...
2   0.0  ...
3  22.0  ...
4   NaN  ...
5   2.0  ...
  

Обратите внимание, что в pandas большинство операций выполняется с внутренним выравниванием данных. Это означает, что pandas в основном всегда будут пытаться сопоставить индексы, поэтому удаление значений NaN здесь приведет к получению значений NaN, где индекс отсутствует с левой стороны.