У меня есть фреймворк, содержащий один столбец идентификаторов, а все остальные столбцы - это числовые значения, для которых я хочу вычислить z-баллы. Вот его подраздел:
ID Age BMI Risk Factor
PT 6 48 19.3 4
PT 8 43 20.9 NaN
PT 2 39 18.1 3
PT 9 41 19.5 NaN
Некоторые из моих столбцов содержат значения NaN, которые я не хочу включать в вычисления z-score, поэтому я намерен использовать решение, предлагаемое для этого вопроса: как zscore normalize pandas с nans?
df['zscore'] = (df.a - df.a.mean())/df.a.std(ddof=0)
Я заинтересован в применении этого решения ко всем моим столбцам, кроме столбца ID, чтобы создать новый фреймворк данных, который можно сохранить в виде файла Excel, используя
df2.to_excel("Z-Scores.xlsx")
Итак, в основном; как я могу вычислить z-баллы для каждого столбца (игнорируя значения NaN) и выталкивать все в новый фреймворк?
SIDENOTE: существует концепция в pandas, называемая "индексирование", которая запугивает меня, потому что я плохо ее понимаю. Если индексирование является важной частью решения этой проблемы, пожалуйста, опустите ваше объяснение индексации.