суммируйте аналогичный набор всех столбцов в Python Pandas

#python-3.x #pandas

#python-3.x #pandas

Вопрос:

Я новичок в Python pandas, у меня проблемы со сбором сделок в этом файле CV, пожалуйста, помогите, как мне написать команду, чтобы добавить размер всех похожих валютных пар в Pandas, например, общий размер всех сторон = символ покупки = btc-irt

размер бокового символа

купить- btc-irt- 0.011

купить- btc-irt- 0.0045

продать- btc-irt- 0.0001

продать- btc-irt- 0.0001

Комментарии:

1. У вас есть пример?

Ответ №1:

Для суммирования значений столбцов в файле CSV вы можете использовать pandas для загрузки и группировки значений.

Попробуйте этот код:

 import pandas as pd

s = '''
side- symbol- size
buy- btc-irt- 0.011
buy- btc-irt- 0.0045
sell- btc-irt- 0.0001
sell- btc-irt- 0.0001
buy- eth-irt- 0.022
buy- eth-irt- 0.0046
sell- eth-irt- 0.0011
sell- eth-irt- 0.0021
'''.strip()

with open("data.csv",'w') as f: f.write(s) # write test file


#### main script ####

df = pd.read_csv('data.csv', sep=' ') # load data, columns separated by space
print('---- dataframe ----n',df)

gb = df.groupby(["side-","symbol-"]).sum() # group by two columns, sum of third column
print('nn---- grouped ----n',gb)
  

Вывод

 ---- dataframe ----
    side-   symbol-    size
0   buy-  btc-irt-  0.0110
1   buy-  btc-irt-  0.0045
2  sell-  btc-irt-  0.0001
3  sell-  btc-irt-  0.0001
4   buy-  eth-irt-  0.0220
5   buy-  eth-irt-  0.0046
6  sell-  eth-irt-  0.0011
7  sell-  eth-irt-  0.0021


---- grouped ----
                   size
side- symbol-
buy-  btc-irt-  0.0155
      eth-irt-  0.0266
sell- btc-irt-  0.0002
      eth-irt-  0.0032
  

Комментарии:

1. спасибо за ваше руководство, это выдает сообщение об ошибке трассировки (последний последний вызов): File «/home/ubu/Desktop/cvs/b.py «, строка 8, в <module> gb = df.groupby([«side-«,»symbol-«]).sum() # группа по двум столбцам, сумма файла третьего столбца «/usr/lib/python3/dist-packages/pandas/core/generic.py «, строка 7884, в groupby возвращает groupby(

2. Это продолжение файла с сообщением об ошибке «/usr/lib/python3/dist-packages/pandas/core/groupby/groupby.py «, строка 2522, в groupby возвращает класс (obj, by, **kwds) Файл «/usr/lib/python3/dist-packages/pandas/core/groupby/groupby.py «, строка 384, в группе инициализации , исключения, obj = _get_grouper( Файл «/usr/lib/python3/dist-packages/pandas/core/groupby/grouper.py «, строка 621, в _get_grouper вызываем KeyError(gpr) KeyError: ‘side-‘

3. Исходя из ошибки, у вас нет side- столбца в вашем фрейме данных