이를 달성하는 한 가지 방법은
>>> pd.DataFrame(np.array([[2, 3, 4]]), columns=['A', 'B', 'C']).append(df, ignore_index=True)
Out[330]:
A B C
0 2 3 4
1 5 6 7
2 7 8 9
일반적으로 시리즈가 아닌 데이터 프레임을 추가하는 것이 가장 쉽습니다. 귀하의 경우에는 새 행이 "위에"(시작 ID 포함) 있고 함수가 없기 때문에 pd.prepend()
먼저 새 데이터 프레임을 만든 다음 이전 데이터 프레임을 추가합니다.
ignore_index
데이터 프레임에서 기존의 진행중인 인덱스를 무시하고 첫 번째 행이 index 1
로 다시 시작하는 대신 실제로 인덱스로 시작하는지 확인합니다 0
.
일반적인 고지 사항 : Cetero censeo ... 행 추가는 매우 비효율적 인 작업입니다. 성능에 관심이 있고 먼저 올바른 (더 긴) 인덱스를 사용하여 데이터 프레임을 만든 다음 추가 행을 데이터 프레임에 삽입 할 수 있다면 반드시 그렇게해야합니다. 보다:
>>> index = np.array([0, 1, 2])
>>> df2 = pd.DataFrame(columns=['A', 'B', 'C'], index=index)
>>> df2.loc[0:1] = [list(s1), list(s2)]
>>> df2
Out[336]:
A B C
0 5 6 7
1 7 8 9
2 NaN NaN NaN
>>> df2 = pd.DataFrame(columns=['A', 'B', 'C'], index=index)
>>> df2.loc[1:] = [list(s1), list(s2)]
지금까지 우리는 당신이 가진 것을 가지고 있습니다 df
.
>>> df2
Out[339]:
A B C
0 NaN NaN NaN
1 5 6 7
2 7 8 9
그러나 이제 다음과 같이 쉽게 행을 삽입 할 수 있습니다. 공간이 미리 할당 되었기 때문에 이것이 더 효율적입니다.
>>> df2.loc[0] = np.array([2, 3, 4])
>>> df2
Out[341]:
A B C
0 2 3 4
1 5 6 7
2 7 8 9
s1.values
것과는 반대로 사용하는 것이 좋습니다 .list(s1)
list(s1)