Python Pandas Series.nonzero() 获取系列中所有非零值的索引
Python是一种进行数据分析的伟大语言,主要是因为以数据为中心的Python软件包的奇妙生态系统。Pandas就是这些包中的一个,它使导入和分析数据变得更加容易。
Pandas Series.nonzero() 是一个少参数的方法。就像它的名字一样,它不是从一个系列中返回非零值,而是返回所有非零值的索引。返回的系列索引可以传递给iloc方法并返回所有非零值。
语法: Series.nonzero()
返回类型: 指数的数组
示例:
在这个例子中,使用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方法返回。