2022年 11月 5日

python中ix用法_Python:Pandas中的ix用法详细解释

终于弄懂了Pandas中ix()函数的用法了。首先生成一个数据框

import numpy as np

import pandas as pd

df = pd.DataFrame(np.arange(0,60,2).reshape(10,3),columns=list(‘abc’))

df

输出的数据框是这个样子的

a b c

0 0 2 4

1 6 8 10

2 12 14 16

3 18 20 22

4 24 26 28

5 30 32 34

6 36 38 40

7 42 44 46

8 48 50 52

9 54 56 58

可以看到索引index为0,1,2…9,列标签columns name为a,b,c

df.ix[:,:]

print(df)

#输出结果为数据的所有行和列

a b c

0 0 2 4

1 6 8 10

2 12 14 16

3 18 20 22

4 24 26 28

5 30 32 34

6 36 38 40

7 42 44 46

8 48 50 52

9 54 56 58

df.ix[1:6,:]

print(df)

#上面这个代码一直报错,TypeError: unhashable type: ‘slice’,这种错误类型

#虽然我不太知道为什么,但是可以做如下更改后就没有问题了

df=df.values[1:6,:]

print(df)

#输出结果如下。数据框中的第2-6行,所有列

[[ 6 8 10]

[12 14 16]

[18 20 22]

[24 26 28]

[30 32 34]]

ix既能通过索引查询,又能通过行列名进行查询

.ix具备.loc,.iloc,.at,.iat,dataframe[]的所有功能,总之就是.loc,.iloc,.at,.iat,dataframe的语法它都能用,所以在平时的使用中,可以优先选择ix.

至于其它的几个.loc,.iloc,.iat,dataframe[],如果有需要的话,下次再更新