1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Pandas中iloc loc ix三者的区别

Pandas中iloc loc ix三者的区别

时间:2019-09-16 02:41:46

相关推荐

Pandas中iloc loc ix三者的区别

一、综述:iloc、loc、ix可以用来索引数据、抽取数据

二、iloc、loc、ix三者对比

iloc和loc的区别 iloc主要使用数字来索引数据,不能使用字符型的标签来索引数据。loc只能使用字符型标签来索引数据,不能使用数字来索引数据。特殊情况:当dataframe的行标签或列标签为数字时,loc就可以来索引 行标签和列标签都是数字的情况

a = np.arange(12).reshape(3, 4)print("a: \n", a)df = pd.DataFrame(a)print("df: \n", df)print("df.loc[0]: \n", df.loc[0])print("df.iloc[0]: \n", df.iloc[0])print("df.loc[:,[0,3]]: \n", df.loc[:, [0, 3]])print("df.iloc[:, [0,3]]: \n", df.iloc[:, [0, 3]])

将行标签[0, 1, 2]改为[‘a’,‘b’,‘c’]时的情况

df.index = ['a', 'b', 'c']print("df: \n", df)# print(df.loc[0]) 报错!TypeError: cannot do label indexing on <class 'pandas.core.indexes.base.Index'> with these indexers [0] of <class 'int'>print("df.iloc[0]: \n", df.iloc[0])print("df.loc['a']: \n", df.loc['a'])# print("df.iloc['a']: \n", df.iloc['a']) 报错!

将列标签[0, 1, 2]改为[‘A’, ‘B’, ‘C’]时的情况

df.columns = ['A', 'B', 'C']print("df: \n", df)print("df.loc[:, 'A']: \n", df.loc[:, 'A'])# print("df.iloc[:, 'A']: \n", df.iloc[:, 'A']) 报错!

ix是一种混合索引,字符型标签和整型索引都可以使用

print("df.ix[0]: \n", df.ix[0])print("df.ix['a']: \n", df.ix['a'])print("df.ix[:, 0]: \n", df.ix[:, 0])print("df.ix[:, 'A']: \n", df.ix[:, 'A'])

三、参考博客

CSDN博客链接

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。