我使用的pandas版本是'0.20.1',python 3
虽然有两个问题: question1,question2 我被问到同样的错误,而我发现这两个问题跟我的情况不一样。
数据来源于“用于数据分析的Python”一书,第123-124页。 当我运行以下代码时,
frame = DataFrame(np.arange(9).reshape((3, 3)), index=['a', 'c', 'd'],
columns=['Ohio', 'Texas', 'California'])
states = ['Texas', 'Utah', 'California']
frame.reindex(index=['a', 'b', 'c', 'd'], method='ffill',columns=states)
报告错误
ValueError: index must be monotonic increasing or decreasing
虽然我尝试了两个表达式,但它们运行成功:
frame.reindex(index=['a', 'b', 'c', 'd'], columns=states)
或
frame.reindex(index=['a', 'b', 'c', 'd'], method='ffill')
***********************更新***************
我试过这段代码,
frame3=frame.reindex(index=['a', 'b', 'c', 'd'], method='ffill').reindex(columns=states)
然后它返回与本书相同的结果。
Out[92]:
Texas Utah California
a 1 NaN 2
b 1 NaN 2
c 4 NaN 5
d 7 NaN 8
答案 0 :(得分:0)
因为列也是重新索引的,而不是单调增加或减少。