Абсолютная разница, дающая минус процентыPython

Программы на Python
Ответить
Anonymous
 Абсолютная разница, дающая минус проценты

Сообщение Anonymous »

У меня есть DataFrame, чтобы найти процент абсолютной разницы между двумя источниками в Python. Но когда я использую приведенный ниже код, некоторые столбцы дают -% (минус проценты)
Я проверил, что столбцы, показывающие типы данных минус процент, одинаковы в обоих источниках. p>
Может ли кто-нибудь помочь мне выяснить, почему?

Код: Выделить всё

    # Define the columns you want to process
columns = ['a', 'b', 'c', 'd']

# Create the results DataFrame
results_df = pd.DataFrame()

results_df['date'] = c_df['date']
results_df['id'] = c_df['id']

for col in columns:
# calculating the absolute difference
diff = np.abs(c_df[f'{col}_s1'] - c_df[f'{col}_s2'])

# calculating mean for snowflake columns
norm_diff = c_df[f'{col}_s1'].mean()

# Avoid division by zero
if norm_diff == 0:
percentage = np.zeros(len(diff))
else:
# calculating percentage difference b/w the columns in both datasets
percentage = (diff / norm_diff) * 100

# Round the percentage_difference and add % symbol
results_df[col] = [f"{round(diff)}%" for diff in percentage]

display(results_df)
Результаты примерно такие.


a
b
c
d




0%
5%
10%
-5%


10%
100%
-50%
200%




Подробнее здесь: https://stackoverflow.com/questions/785 ... ercentages
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»