수색…


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 중 하나를 변경하지 않습니다. 대신 원본 2 개를 추가하여 새 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)를 가질 수 있습니다. 이 문제를 피하기 위해 팬더에게 새 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