国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

pandas ix &iloc &loc的區(qū)別

2020-02-16 00:35:07
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

一開始自學(xué)Python的numpy、pandas時(shí)候,索引和切片把我都給弄暈了,特別是numpy的切片索引、布爾索引和花式索引,簡(jiǎn)直就是大亂斗。但是最近由于版本的問(wèn)題,從之前的Python2.7改用Python3.6 了,在3.6中提供了loc和iloc兩種索引方法,把ix這個(gè)方法給劃分開來(lái)了,所以很有必要做個(gè)總結(jié)和對(duì)比。

loc——通過(guò)行標(biāo)簽索引行數(shù)據(jù) iloc——通過(guò)行號(hào)索引行數(shù)據(jù) ix——通過(guò)行標(biāo)簽或者行號(hào)索引行數(shù)據(jù)(基于loc和iloc 的混合)

同理,索引列數(shù)據(jù)也是如此!

舉例說(shuō)明:

1、分別使用loc、iloc、ix 索引第一行的數(shù)據(jù):

(1)loc

import pandas as pddata=[[1,2,3],[4,5,6]]index=['a','b']#行號(hào)columns=['c','d','e']#列號(hào)df=pd.DataFrame(data,index=index,columns=columns)#生成一個(gè)數(shù)據(jù)框#print df.loc['a']'''c  1d  2e  3'''print df.loc[0]#這個(gè)就會(huì)出現(xiàn)錯(cuò)誤'''TypeError: cannot do label indexing on <class 'pandas.indexes.base.Index'> with these indexers [1] of <type 'int'>'''

(2)iloc

import pandas as pddata=[[1,2,3],[4,5,6]]index=['a','b']#行號(hào)columns=['c','d','e']#列號(hào)df=pd.DataFrame(data,index=index,columns=columns)#生成一個(gè)數(shù)據(jù)框print df.iloc[0]'''c  1d  2e  3'''print df.iloc['a']'''TypeError: cannot do positional indexing on <class 'pandas.indexes.base.Index'> with these indexers [a] of <type 'str'>'''

(3)ix

import pandas as pddata=[[1,2,3],[4,5,6]]index=['a','b']#行號(hào)columns=['c','d','e']#列號(hào)df=pd.DataFrame(data,index=index,columns=columns)#生成一個(gè)數(shù)據(jù)框print df.ix[0]'''c  1d  2e  3'''print df.ix['a']'''c  1d  2e  3'''

2、分別使用loc、iloc、ix 索引第一列的數(shù)據(jù):

import pandas as pddata=[[1,2,3],[4,5,6]]index=['a','b']#行號(hào)columns=['c','d','e']#列號(hào)df=pd.DataFrame(data,index=index,columns=columns)#生成一個(gè)數(shù)據(jù)框print df.loc[:,['c']]print df.iloc[:,[0]]print df.ix[:,['c']]print df.ix[:,[0]]#結(jié)果都為'''  ca 1b 4'''

3、分別使用loc、iloc、ix 索引多行的數(shù)據(jù):

import pandas as pddata=[[1,2,3],[4,5,6]]index=['a','b']#行號(hào)columns=['c','d','e']#列號(hào)df=pd.DataFrame(data,index=index,columns=columns)#生成一個(gè)數(shù)據(jù)框print df.loc['a':'b']print df.iloc[0:1]print df.ix['a':'b']print df.ix[0:1]#結(jié)果都為'''  c d ea 1 2 3b 4 5 6'''

4、分別使用loc、iloc、ix 索引多列的數(shù)據(jù):

import pandas as pddata=[[1,2,3],[4,5,6]]index=['a','b']#行號(hào)columns=['c','d','e']#列號(hào)df=pd.DataFrame(data,index=index,columns=columns)#生成一個(gè)數(shù)據(jù)框print df.loc[:,'c':'d']print df.iloc[:,0:2]print df.ix[:,'c':'d']print df.ix[:,0:2]#結(jié)果都為'''  c da 1 2b 4 5'''

5、loc、iloc、ix使用切片的區(qū)別

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 崇礼县| 藁城市| 宁波市| 昌江| 昌宁县| 托克逊县| 大荔县| 体育| 苏尼特右旗| 分宜县| 马关县| 屏边| 寻甸| 城口县| 保靖县| 新乡市| 顺昌县| 鹿泉市| 静乐县| 双辽市| 灵山县| 阳曲县| 江北区| 昂仁县| 大竹县| 隆子县| 海南省| 东乡县| 南阳市| 东丰县| 安西县| 舞阳县| 同江市| 安徽省| 甘南县| 泸水县| 铁岭市| 沾化县| 富民县| 井陉县| 定结县|