Как перебирать строки из разных данных и использовать их в качестве значения в других? - PullRequest
1 голос
/ 28 октября 2019

Я пытаюсь перебрать столбец контракта df_sum по контракту по его уникальным значениям. Затем создайте фрейм данных для каждого значения «контракта» для дальнейшего расчета.

Ниже описывается, как это происходит для одного уникального значения. Мне нужно перебрать много тысяч уникальных значений.

Вот как выглядит df_sum в целом. https://imgur.com/xGLo5R7

import pandas as pd
from pandas import read_csv


df_sum = read_csv(r'path_to_sum.csv', sep=",", low_memory=False, index_col=False) #summary file

df_EH = df[df['contract']=='EH60906']                 # choose specific contract
df_EH = df_EH.sort_values(by=['datetime'])            # sort specific contract data by datetime and assign as df_EH

... data analysis should follow such as summing up power_pos for each contract number etc.

Я попробовал следующее:

import pandas as pd
from pandas import read_csv
import numpy as np
from datetime import datetime


df_sum = read_csv(r'path_to_sum.csv', sep=",", low_memory=False, index_col=False) #summary file

graph_df = pd.DataFrame()

for contract in df_sum['contract'].unique():
    print(contract)
    contract_df = df[df['contract'] == contract]    
    contract_df.set_index('datetime', inplace=True)
    contract_df.sort_index(inplace = True)
    contract_df."data analysis"

Expected result:
ABABAB.power_pos.sum = 123123
CDCDCD.power_pos.sum = 213124
etc      

1 Ответ

1 голос
/ 28 октября 2019

Как насчет этого.

df_sum = pd.read_csv(r'path_to_sum.csv', sep=",", low_memory=False, index_col=False)
grouped = df_sum.groupby("contract")["power_pos"].sum()
print(grouped)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...