Вычтите 1,00 из всех кадров данных панд. Получение больших отрицательных значений?

Вы можете попробовать добавить текстовые виджеты подряд, чтобы достичь этого.

final prefixText = Text('You have clicked the button');

final counterText = Text(' $_counter', style: TextStyle(fontWeight: FontWeight.bold),);

final suffixText = Text(' times');

return Scaffold(
      body: Center(
        child: Row(
          children: <Widget>[prefixText, counterText, suffixText],
        ),
      ),
    );

ПРИМЕЧАНИЕ. Хотя вы получаете желаемый результат с помощью этого, я думаю, что ответ @Raouf Rahiche более уместен.

1
задан Deduplicator 20 January 2019 в 01:56
поделиться

1 ответ

1.110223e-16 не большое, отрицательное значение. Это на самом деле очень малая положительная ценность. e-16 представляет собой крошечный показатель.

1e-2
# 0.01

1e-4
# 0.0001

print('{:.16f}'.format(1e-16))
# 0.0000000000000001

Я предполагаю, что вы столкнулись с несоответствиями с плавающей запятой . Например, единицы в ваших данных могут на самом деле иметь крошечные дроби с плавающей точкой:

1 + 1.110223e-16
# 1.0

Просто вы не сможете увидеть это при распечатке ваших DataFrames.


Одно из предложений, которое я хотел бы использовать, - это использовать np.isclose и установить эти близкие к 0 значения на ноль.

df.values[np.isclose(df.values, 0)] = 0
0
ответ дан coldspeed 20 January 2019 в 01:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: