Как определить метод с двумя аргументами в классе python? - PullRequest
1 голос
/ 24 февраля 2020

У меня есть кусок кода, который работает нормально, теперь по некоторым причинам (создание пакета, подключенного к jupyter) мне нужно переписать его как класс и методы. Мне нужно получить мои данные из файла, затем извлечь из него два списка, затем выполнить некоторые операции с ними и в конце суммировать их каким-либо образом. Вот схема кода, которую я уже написал:

import numpy as np
class Tv:
    def __init__(self):
    def set_data(self, df):
        self.data = df
    def split_df(self, df):
        self.data1 = df[(df.prop == '1')].reset_index()
        self.data2 = df[(df.prop == '2')].reset_index()
        event = ['2004-05-16', '2004-05-27']
        list1, list2 = list()
        for i in range(0, len(event)):
            temp = self.data1[self.data1.event == event[i]].reset_index()
            temp2 = self.data2[self.data2.event == event[i]].reset_index()
            list1.append(temp)
            list2.append(temp2)
        self.list1 = list1
        self.list2 = list2
        return (self.list1, self.list2)
    def sum_lists(self, list1, list2):
        summed_list = np.sum(list1, list2)
        return summed_list

Как видите, мне нужно извлечь list1 и list2 из заданного фрейма данных (df), а затем после внесения некоторых изменений в каждый из их (которые я удалил ради краткости) я суммирую их и возвращаю сумму. Теперь проблема в том, что я не знаю, как правильно определить метод summed_lists. Я очень новичок в OOP, и все немного смущает меня.

это ошибка, которую я получаю:

'Tv' object has no attribute 'sum_lists'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...