2016-06-22 2 views
-2

출력 데이터 프레임을 Excel 파일로 작성하기 전에 데이터 프레임에 추가 행을 추가해야합니다.기존 인덱스를 덮어 쓰지 않고 인덱스 2의 팬더 데이터 프레임에 행을 추가하는 방법

----------------------------- 
    | Col1 | Col2 | Col3 | Col4 | 
    ----------------------------- 
0 | CA1 | CB1 | CC2 | CD1 | 
1 | CA5 | CB5 | CC5 | CD5 | 
2 | CA3 | CB3 | CC3 | CD3 | 
    ----------------------------- 

mydict = { 'COL1': 'P', 'Col2의': 'Q', '열 3': 'R', 'Col4' 'S'} 아래 내 예 dataframe이다

이제 열 머리글에 해당하는 mydict에서 새 행 값을 선택해야하는 추가 행을 추가해야합니다.

원하는 출력 :

----------------------------- 
    | Col1 | Col2 | Col3 | Col4 | 
    ----------------------------- 
    | P | Q | R | S | 
0 | CA1 | CB1 | CC2 | CD1 | 
1 | CA5 | CB5 | CC5 | CD5 | 
2 | CA3 | CB3 | CC3 | CD3 | 
    ----------------------------- 

사람이 도움을 주시기 바랍니다 수 있습니다.

+0

가능한 복제 [A 팬더 dataframe에 추가 행을 추가하는 방법 (http://stackoverflow.com/questions/19365513/추가하려면 어떻게해야할까요? – David

+0

제 질문과 다릅니다. 색인 2에 새 행을 추가해야합니다. 이렇게하면 기존 행을 덮어 쓰게됩니까? 또한 해당 열 머리글에 대해 mydict에서 값을 가져 오는 방법을 알고 싶었습니다. 감사. – Rtut

+0

혼란 스럽네요 ... 원하는 결과물입니까? 원하는 위치에 행을 삽입하거나 각 열에 대해 여러 이름을 얻으려고하십니까? –

답변

0

이 방법이 유용할까요? 첫째, dataframe에 mydict를 변환 한 후 다음 new_df입니다 pd.concat

mydict = mydict= {'Col1': 'P', 'Col2': 'Q', 'Col3': 'R', 'Col4': 'S'} 
df1 = pd.DataFrame(data=mydict, index=[0]) 

data = np.array([['CA1', 'CB1', 'CC2', 'CD1'], 
       ['CA5', 'CB5', 'CC5', 'CD5'], 
       ['CA3', 'CB3', 'CC3', 'CD3']]) 
df2 = pd.DataFrame(data, columns=['Col1', 'Col2', 'Col3', 'Col4']) 

new_df = pd.concat([df1, df2]) 

를 사용

In [58]: new_df 
Out[58]: 
    Col1 Col2 Col3 Col4 
0 P Q R S 
0 CA1 CB1 CC2 CD1 
1 CA5 CB5 CC5 CD5 
2 CA3 CB3 CC3 CD3 
+0

굉장합니다. 그것은 효과가있다! 감사 – Rtut

관련 문제