Добавить данные в фрейм данных pandas

#python #pandas

#python #pandas

Вопрос:

Мне нужно отформатировать фрейм данных pandas для следующего вида данных

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

Моя основная проблема, которую я не могу понять, как добавить, например, из ID 1 значение и для id 1 другое значение в отсортированном фрейме данных pandas

  s = """
     ,trajectory_id,x ,y ,frame
    0,1            ,0 ,-2,0
    1,1            ,0 ,-1,1
    2,1            ,0 ,0 ,2
    3,1            ,0 ,1 ,3
    4,2            ,2 ,2 ,4
    5,2            ,1 ,1 ,5
    6,2            ,0 ,0 ,6
    7,2            ,-1,-1,7
    """
  

X, Y указаны для идентификатора объекта, frame — это инкрементная переменная

КАЖДЫЙ ФРЕЙМ, который я обнаруживаю, и получаю новые координаты объекта с его идентификатором отслеживания

 dic_car_lists = defaultdict(list)

trk = trk.astype(np.int32) ## trck is TRAJECTORY_ID



 p = np.array([[((trk[1]   trk[3]) / 2,  (trk[0]   trk[2]) / 2)]], dtype=np.float32)
            center_pt = cv2.perspectiveTransform(p, H)

            point_lists[trk[4]].append(center_pt.T)
            x = [i[0] for i in point_lists[trk[4]]]
            y = [i[1] for i in point_lists[trk[4]]]
            x = list(map(lambda dd: float(dd[0]),x))
            y = list(map(lambda dd: float(dd[0]),y))
            dic_car_lists[trk[4]].append([trk[4], x, y, frame_idx])


def compute(data,df_region, df_line):
        gb = ('trajectory_id',)
        card_data = np.array(data)
        columns = ['trajectory_id', 'x_world', 'y_world', 'frame']

        car_d[card_data[0]].append(data)
        df = pd.DataFrame(list(car_d.items()),
                     columns=columns)

       compute( dic_car_list[trk[4]], df_region, df_line )
  

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

1. append for example from ID 1, a value, and for id 1, another value что? Пожалуйста, не могли бы вы лучше объяснить, что вы пытаетесь сделать

2. пожалуйста, приведите наглядный пример ввода данных и того, какие данные на выходе вы хотите получить. Правильно отформатируйте свой код и объясните, что не так с кодом, который у вас есть сейчас, иначе вам трудно помочь.

3. @yatu как вы видите в строке примера, идентификатор 1 имеет X, Y, а затем ID1 имеет другой X, Y. Итак, я хочу добавить идентификатор траектории каждого фрейма с его значением X, Y в panadas dataframe