당신에 대한 정보를 찾고 여기 온 경우 을 병합하는 방법
DataFrame
과Series
인덱스에 , 봐주세요 이 답변 .OP의 원래 의도는 시리즈 요소를 다른 DataFrame에 열로 할당하는 방법을 묻는 것이 었 습니다 . 이것에 대한 답을 알고 싶다면 EdChum 이 받아 들인 대답 을보십시오.
내가 생각 해낼 수있는 최선은
df = pd.DataFrame({'a':[1, 2], 'b':[3, 4]}) # see EDIT below
s = pd.Series({'s1':5, 's2':6})
for name in s.index:
df[name] = s[name]
a b s1 s2
0 1 3 5 6
1 2 4 5 6
누구든지 더 나은 구문 / 빠른 방법을 제안 할 수 있습니까?
내 시도 :
df.merge(s)
AttributeError: 'Series' object has no attribute 'columns'
과
df.join(s)
ValueError: Other Series must have a name
편집 게시 된 처음 두 개의 답변은 내 질문에 대한 문제를 강조 했으므로 다음을 사용하여 구성하십시오 df
.
df = pd.DataFrame({'a':[np.nan, 2, 3], 'b':[4, 5, 6]}, index=[3, 5, 6])
최종 결과로
a b s1 s2
3 NaN 4 5 6
5 2 5 5 6
6 3 6 5 6
df
and 의 정의를 사용하면s
이 답변 은 질문에서 요청한 결과가 아닌 빈 데이터 프레임을 반환합니다 . 우리는 색인에서 일치하고 싶지 않습니다. 의s
모든 행에 값 을 브로드 캐스트하려고합니다df
.