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

Pandas的 loc iloc ix 区别

时间:2019-05-10 06:24:31

相关推荐

Pandas的 loc iloc ix 区别

import pandas as pd data = [[1,2,3],[4,5,6]] index = [0,1] columns=['a','b','c'] df = pd.DataFrame(data=data, index=index, columns=columns) 1. loc——通过行标签索引行数据df.loc[1] ''''' a 4 b 5 c 6 ''' 1.2 loc[‘d’]表示索引的是第’d’行(index 是字符)import pandas as pd data = [[1,2,3],[4,5,6]] index = ['d','e'] columns=['a','b','c'] df = pd.DataFrame(data=data, index=index, columns=columns) df.loc['d'] ''''' a 1 b 2 c 3 ''' 1.3 如果想索引列数据,像这样做会报错print df.loc['a'] ''''' KeyError: 'the label [a] is not in the [index]' ''' 1.4 loc可以获取多行数据print df.loc['d':] ''''' a b c d 1 2 3 e 4 5 6 ''' 1.5 loc扩展——索引某行某列print df.loc['d',['b','c']] ''''' b 2 c 3 ''' 1.6 loc扩展——索引某列print df.loc[:,['c']] ''''' c d 3 e 6 ''' 当然获取某列数据最直接的方式是df.[列标签],但是当列标签未知时可以通过这种方式获取列数据。需要注意的是,dataframe的索引[1:3]是包含1,2,3的,与平时的不同。2. iloc——通过行号获取行数据2.1 想要获取哪一行就输入该行数字df.iloc[1] ''''' a 4 b 5 c 6 ''' 2.2 通过行标签索引会报错print df.iloc['a'] ''''' TypeError: cannot do label indexing on <class 'pandas.core.index.Index'> with these indexers [a] of <type 'str'> ''' 2.3 同样通过行号可以索引多行df.iloc[0:] ''''' a b c d 1 2 3 e 4 5 6 ''' 2.4 iloc索引列数据df.iloc[:,[1]] ''''' b d 2 e 5 ''' 3. ix——结合前两种的混合索引3.1 通过行号索引df.ix[1] ''''' a 4 b 5 c 6 ''' 3.2 通过行标签索引df.ix['e'] ''''' a 4 b 5 c 6 '''

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