2016 - 2024

感恩一路有你

pandas重新设置列索引 pandas.dataframe怎么把列变成索引?

浏览量:1993 时间:2021-03-15 09:01:40 作者:admin

pandas.dataframe怎么把列变成索引?

在dataframe中根据一定的条件,得到符合要求的某行元素所在的位置。

代码如下所示:

[python] view plain copy

df = pd.DataFrame({"BoolCol": [1, 2, 3, 3, 4],"attr": [22, 33, 22, 44, 66]},

index=[10,20,30,40,50])

print(df)

a = df[(df.BoolCol==3)&(df.attr==22)].index.tolist()

print(a)

df如下所示,以上通过选取“BoolCol”取值为3且“attr”取值为22的行,得到该行在df中的位置

注意:返回的位置为index列表,根据index的不同而不同,这点易于数组中默认的下标。

[python] view plain copy

BoolCol attr

10 1 22

20 2 33

30 3 22

40 3 44

50 4 66

[30]

pandas中哪个函数可以读取excel文档excelfilepython?

import xlrddata = xlrd.open_workbook("excelFile.xls")table = data.sheets()[0] #通过索引顺序获取table = data.sheet_by_index(0) #通过索引顺序获取table = data.sheet_by_name(u"Sheet1")#通过名称获取

如何用pandas实现选取特定索引的行?

分享一篇pandas实现选取特定索引的行的方法,希望对你有所帮助:

>>> import numpy as np

>>> import pandas as pd

>>> index=np.array([2,4,6,8,10])

>>> data=np.array([3,5,7,9,11])

>>> data=pd.DataFrame({"num":data},index=index)

>>> print(data)

num

2 3

4 5

6 7

8 9

10 11

>>> select_index=index[index>5]

>>> print(select_index)

[ 6 8 10]

>>> data["num"].loc[select_index]

6 7

8 9

10 11

Name: num, dtype: int32

>>>

注意,不能用iloc,iloc是将序列当作数组来访问,下标又会从0开始:

>>> data["num"].iloc[2:5]

6 7

8 9

10 11

Name: num, dtype: int32

>>> data["num"].iloc[[2,3,4]]

6 7

8 9

10 11

Name: num, dtype: int32

>>>

可以试试看

pandas重新设置列索引 pandas获取行索引 dataframe指定行索引

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。