Добавить DataFrame как строку к большему DataFrame - PullRequest
1 голос
/ 06 июня 2019

У меня есть пустой фрейм данных (data), который я определил следующим образом:

 data=pd.DataFrame({'A':[],'B':[],'C':[],'D':[]})

и с помощью цикла for я получаю несколько временных фреймов данных, которые выглядят так:

index   order_count
 C             3
 A             1
 B             1

Я хотел бы заполнить «данные», используя данные этих временных фреймов данных. Я думаю, мне нужно проверить столбец "order_count" в "index" и добавить соответствующий "order_count". После этого возможно объединить временные результаты.

Я хотел бы получить следующий вывод для "данных":

time_interval   A  B  C  D
     1          1  1  3  0
     2          1  1  1  1
    ...

Ответы [ 2 ]

1 голос
/ 07 июня 2019

Одна опция использует append, которая возвращает копию (относительно неэффективно при многократном вызове append):

data

Empty DataFrame
Columns: [A, B, C, D]
Index: []

temp_df

  index  order_count
0     C            3
1     A            1
2     B            1

data.append(temp_df.set_index('index')['order_count'], ignore_index=True)

     A    B    C   D
0  1.0  1.0  3.0 NaN

Другим вариантом является назначение на месте с помощью loc:

data.loc[len(df),:] = temp_df.set_index('index')['order_count']
data

     A    B    C   D
4  1.0  1.0  3.0 NaN
0 голосов
/ 07 июня 2019

Если я хорошо понял вашу проблему, я думаю, что это может помочь:

#df being the dataFrame and temp being the one you are wellling to add
df = df.append(temp.set_index('index').T, ignore_index = True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...