2016-11-01 1 views
1

에 의해 2 dataframes 셀을 병합 :팬더 + 파이썬 :이 <code>pandas.DataFrame</code> 내가 가진 세포

values = pandas.DataFrame([[0, 1], [7,5]], columns=["a", "b"], index=[1, 2]) 
info = pandas.DataFrame([["foo", "bar"], ["few", "tar"]], columns=["a", "b"], index=[1, 2]) 

valuesinfo 사용자에 대한 설정이 그래서 차트를 인쇄 할 수있는 모든 열을 셀로 dataframes 셀을 병합하여

a   b 
1 0 : foo  1 : bar 
2 7 : few  5 : tar 

for 루프없이 어떻게 할 수 있습니까?

답변

1

당신은 STR에 values 데이터 형식을 변환 구분자로 :와 함께 두 개의 데이터 프레임을 추가 할 수 있습니다.

values.apply(lambda col: col.astype(str)) + " : " + info 

# a  b 
#1 0 : foo 1 : bar 
#2 7 : few 5 : tar 
0

팬더에 내장 된 .merge 방법을 사용할 수 있습니다. 그것은 단지 SQL에 참여처럼 작동

pd.merge(values, info, how='inner', on='user)

: 뭔가처럼

그래서 귀하의 경우 것이 될 것이다.

이 문서에서 예제의 무리가 있습니다

http://pandas.pydata.org/pandas-docs/stable/merging.html

+0

빈 데이터 프레임을 반환합니다. –