значения кадра данных умножаются на 2 - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть одномерный кадр данных:

           4DS.AX   A2B.AX  A2M.AX  AAC.AX  ABC.AX  ABP.AX  ACW.AX  ADH.AX  

2018-12-14  0.00    0.00    0.14    0.01    0.12    0.01    0.00    0.01

ожидаемый результат

          4DS.AX    A2B.AX  A2M.AX  AAC.AX  ABC.AX  ABP.AX  ACW.AX  ADH.AX     
 2018-12-14 0.00    0.00    0.28    0.02    0.24    0.02    0.00    0.02

Я хочу умножить все значения на 2
Это моя попытка:

   [in] df=df.iloc[0,:]*2.0

[out]

             A2B.AX      A2M.AX      AAC.AX     ABC.AX      ABP.AX  
2018-12-14  0.000.00    0.140.14    0.010.01    0.120.12....

1 Ответ

0 голосов
/ 14 декабря 2018

Кажется, что тип столбцов имеет тип str/object, поэтому он скорее добавляется, чем умножается

Пример

import pandas as pd
pd.DataFrame({'x':['0.1']})*2

Вывод:

0.10.1

В то время как

pd.DataFrame({'x':[0.1]})*2

Ouput

0.2

Может проверять тип столбца (-ов)

print(df.dtypes)

Для того, чтобы изменить тип столбца (-ов)

for col in ['4DS.AX','A2B.AX','A2M.AX','AAC.AX','ABC.AX','ABP.AX','ACW.AX','ADH.AX']:
    df[col] = df[col].astype('float')

Тогда тоже должно работать

df.iloc[0,:]*2.0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...