原因已经找到了,在不事先设置好DataFrame的列标签时,append到数据框中的变量顺序会被自动调整
df = pd.DataFrame()
series=pd.Series([3,4,1,6],index=['b','a','d','c'])
df=df.append(series,ignore_index=True)
以上代码输出的结果为:
a b c d
0 4.0 3.0 6.0 1.0
如果要克服该问题除了
df = pd.DataFrame(columns=series.index)
不知道还有什么办法。
没看懂代码逻辑, 如果要保持 series 的顺序, 直接赋值给 dataframe 新列便可, 如