2014-11-30 2 views

답변

1

DataFrame df의 색인이 새로 생성 된 시리즈 '와 일치하지 않을 수 있습니다. 예를 들어,

import pandas as pd 
import numpy as np 
df = pd.DataFrame({'a': [11, 22, 33, 44, 55]}, index=['r1','r2','r3','r4','r5']) 
df['new'] = pd.Series(np.repeat(1, len(df))) 
print df 

및 출력 될 것이다

 a new 
r1 11 NaN 
r2 22 NaN 
r3 33 NaN 
r4 44 NaN 
r5 55 NaN 

pd.Series(np.repeat(1, len(df)))의 인덱스 Int64Index([0, 1, 2, 3, 4], dtype='int64') 때문이다.

df['new'] = np.repeat(1, len(df)) 

필요없이 : 시리즈 만들 때

것을 방지하기 위해 인덱스 인수를 지정 : 인덱스를 무시하는 경우 또는

df['new'] = pd.Series(np.repeat(1, len(df)), index=df.index) 

을, 당신은 단지 NumPy와 배열을 전달할 수 있습니다 시리즈를 만들 수 있습니다 (사실 df['new'] = 1). 인덱스를 사용하여 새 열을 기존 DataFrame에 정렬해야하는 경우 Series를 사용하면 유용합니다.

관련 문제