有一个问题,在Series和DataFrame中有不同的索引,因此数据不对齐并获得NaN:
一种可能的解决方案是将aDates的值通过values转换为numpy数组:
dfAll_dates = pd.DataFrame(index = aDates)
dfAll_dates['my_added_column'] = aDates.values
print (dfAll_dates)
my_added_column
Date
2009-12-31 2009-12-31
2010-01-01 2010-01-01
2010-01-04 2010-01-04
2010-01-05 2010-01-05
2010-01-06 2010-01-06
d = {'Date':'my_added_column'}
df = aDates.to_frame().set_index('Date', drop=False).rename(columns=d)
print (df)
my_added_column
Date
2009-12-31 2009-12-31
2010-01-01 2010-01-01
2010-01-04 2010-01-04
2010-01-05 2010-01-05
2010-01-06 2010-01-06
或者将DataFrame构造函数与dict一起用于新列:
dfAll_dates = pd.DataFrame({'my_added_column':aDates.values}, index = aDates)
print (dfAll_dates)
my_added_column
Date
2009-12-31 2009-12-31
2010-01-01 2010-01-01
2010-01-04 2010-01-04
2010-01-05 2010-01-05
2010-01-06 2010-01-06