python报错:
C:\Users\Wuxin\Anaconda3\lib\site-packages\pandas\core\indexing.py:1418: FutureWarning:
Passing list-likes to .loc or [] with any missing label will raise
KeyError in the future, you can use .reindex() as an alternative.
源程序:
import numpy as np
import pandas as pd
arr = np.arange(16).reshape(4,4)
dataframe_obj=pd.DataFrame(arr,columns=['a','b ', 'c', 'd'])
print(dataframe_obj)
#获取多列数据
print(dataframe_obj.loc[:, ['c', 'a']])
print(dataframe_obj.iloc[:, [2, 0]])
#花式索引
print(dataframe_obj.loc[1:2, ['b', 'c']])
print(dataframe_obj.iloc[1:3, [1, 2]])
出错原因:列索引与定义的不符:b列的表现形式有‘b’和‘b ’两种,不同
出错位置:print(dataframe_obj.loc[1:2, [‘b’, ‘c’]])
方法:将使用的列索引与定义的列索引统一起来
修改后:print(dataframe_obj.loc[1:2, ['b ', ‘c’]])