Pandas数据框中iloc函数的用法

3
为什么以下代码会报错?符号s1.iloc[:,0].min()代表什么意思?
import pandas as pd
import numpy as np
s1 = pd.Series(np.random.rand(5), index=list(range(0, 10, 2)))
s1.iloc[:,0].min()


Traceback (most recent call last):

  File "<ipython-input-324-b57fa06dca84>", line 1, in <module>
    s1.iloc[:,0].min()

  File "C:\Users\xxx\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\indexing.py", line 1325, in __getitem__
    return self._getitem_tuple(key)

  File "C:\Users\xxx\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\indexing.py", line 1662, in _getitem_tuple
    self._has_valid_tuple(tup)

  File "C:\Users\xxx\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\indexing.py", line 188, in _has_valid_tuple
    raise IndexingError('Too many indexers')

IndexingError: Too many indexers
1个回答

2

系列 (pd.Series) 对象是一维的。它由一个类似于数组的容器和一个索引组成。

因此,与任何一维数组一样,只允许一个索引。

要获取系列的最小值,请使用 s1.min()

语法 x.iloc[:, 0].min() 用于 x数据帧 (pd.DataFrame)。换句话说,它用于计算所有行中第一列的最小值。


“只允许一个索引”:Series 可以是多重索引的吗? - cs95
@cᴏʟᴅsᴘᴇᴇᴅ,它仍然是单个索引,但具有多个级别。 - jpp

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接