pandas                
            Добавление к DataFrame
        
        
            
    Поиск…
Добавление новой строки в DataFrame
In [1]: import pandas as pd
In [2]: df = pd.DataFrame(columns = ['A', 'B', 'C'])
In [3]: df
Out[3]: 
Empty DataFrame
Columns: [A, B, C]
Index: []
Добавление строки по одному столбцу:
In [4]: df.loc[0, 'A'] = 1
In [5]: df
Out[5]: 
   A    B    C
0  1  NaN  NaN
Добавляя строку, заданный список значений:
In [6]: df.loc[1] = [2, 3, 4]
In [7]: df
Out[7]: 
   A    B    C
0  1  NaN  NaN
1  2    3    4
Добавление строки с использованием словаря:
In [8]: df.loc[2] = {'A': 3, 'C': 9, 'B': 9}
In [9]: df
Out[9]: 
   A    B    C
0  1  NaN  NaN
1  2    3    4
2  3    9    9
Первый вход в .loc [] - это индекс. Если вы используете существующий индекс, вы будете перезаписывать значения в этой строке:
In [17]: df.loc[1] = [5, 6, 7]
In [18]: df
Out[18]: 
   A    B    C
0  1  NaN  NaN
1  5    6    7
2  3    9    9
In [19]: df.loc[0, 'B'] = 8
In [20]: df
Out[20]: 
   A  B    C
0  1  8  NaN
1  5  6    7
2  3  9    9
Добавить DataFrame в другой DataFrame
Предположим, что мы имеем следующие два DataFrames:
In [7]: df1
Out[7]: 
    A   B
0  a1  b1
1  a2  b2
In [8]: df2
Out[8]: 
    B   C
0  b1  c1
Оба DataFrames не должны иметь одинаковый набор столбцов. Метод append не изменяет ни один из исходных DataFrames. Вместо этого он возвращает новый DataFrame, добавляя исходные два. Добавление DataFrame в другое довольно просто:
In [9]: df1.append(df2)
Out[9]: 
     A   B    C
0   a1  b1  NaN
1   a2  b2  NaN
0  NaN  b1   c1
Как вы можете видеть, возможно иметь повторяющиеся индексы (0 в этом примере). Чтобы избежать этой проблемы, вы можете попросить Pandas повторно проиндексировать новый DataFrame для вас:
In [10]: df1.append(df2, ignore_index = True)
Out[10]: 
     A   B    C
0   a1  b1  NaN
1   a2  b2  NaN
2  NaN  b1   c1
Modified text is an extract of the original Stack Overflow Documentation
        Лицензировано согласно CC BY-SA 3.0
        Не связан с Stack Overflow