Python| Pandas Series.nonzero() 获取系列中所有非零值的索引
Python是一种用于进行数据分析的出色语言,主要是因为以数据为中心的Python包的奇妙生态系统。 Pandas就是其中之一,它使导入和分析数据变得更加容易。
Pandas Series.nonzero()
是一种无参数的方法。就像它的名字说的那样,它不是从一个系列中返回非零值,而是返回所有非零值的索引。返回的一系列索引可以传递给iloc
方法并返回所有非零值。
Syntax: Series.nonzero()
Return type: Array of indices
例子:
在此示例中,使用 Pandas Series()
方法从Python列表创建一个系列。该系列还包含一些零值。之后在系列上调用nonzero()
方法并将结果存储在结果变量中。然后将结果系列传递给iloc()
方法以返回该索引处的所有非零值。
# importing pandas module
import pandas as pd
# importing numpy module
import numpy as np
# creating list
list =[1, 0, 12, 1, 0, 4, 22, 0, 3, 9]
# creating series
series = pd.Series(list)
# calling .nonzero() method
result = series.nonzero()
# display
print(result)
# retrieving values using iloc method
values = series.iloc[result]
# display
values
输出:
(array([0, 2, 3, 5, 6, 8, 9]), )
0 1
2 12
3 1
5 4
6 22
8 3
9 9
dtype: int64
如输出所示,返回每个非零元素的索引位置,并使用iloc
方法返回该位置的值。