Python Pandas Index.asof()

Python Pandas Index.asof()

Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python包的奇妙生态系统。Pandas就是这些包中的一个,它使导入和分析数据变得更加容易。

Pandas Index.asof()函数返回索引中的标签,如果不存在,则返回前一个索引的标签。假设索引是排序的,如果传递的索引标签在索引中,则返回传递的索引标签,如果传递的索引标签不在索引中,则返回前一个索引标签。

注意:该函数只适用于已排序的索引。如果没有排序,则返回错误。

语法: Index.asof(label)

参数 :
label :方法返回最新索引的标签。

返回 : 传递的标签,如果它在索引中。如果通过的标签不在排序的索引中,则为前一个标签,如果没有这样的标签,则为NaN。

例子#1:使用Index.asof()函数来返回最新的索引标签,直到传递的索引标签。

# importing pandas as pd
import pandas as pd
  
# Creating the Index
df = pd.Index([17, 69, 33, 15, 19, 74, 10, 5])
  
# Print the Index
df

输出 :
Python Pandas Index.asof()

让我们先对索引标签进行排序

# sorting the index labels using the argsort() function
df = df[df.argsort()]
  
# Lets print the sorted index labels.
df

输出 :
Python Pandas Index.asof()

现在我们将在索引中找到最新的标签,直到72。

# find the latest index label upto 72
df.asof(72)

输出 :
Python Pandas Index.asof()
正如我们在输出中看到的,该函数已经返回了69,因为它是前一个索引标签,比72小。

例子#2:使用Index.asof()函数来查找截至给定日期的索引的标签。

# importing pandas as pd
import pandas as pd
  
# Creating the Index
idx = pd.Index(['2015-10-31', '2015-12-02', '2016-01-03',
                              '2016-02-08', '2017-05-05'])
  
# Print the Index
df

输出 :
Python Pandas Index.asof()
索引已经在排序中了,所以我们将不对其进行排序。

现在我们将应用index.asof()函数来找到输入标签之前的索引标签。

# to find the label in the index upto '2016-01-01'
idx.asof('2016-01-01')

输出 :
Python Pandas Index.asof()
正如我们在输出中所看到的,该函数返回了 “2015-12-02 “的日期,这是在索引中存在的前一个日期,直到 “2016-01-01″。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程