考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

假设有DataFrame对象df,想要提取df的最后一列字段,可以使用以下哪个方法?
A. df.iloc[:,-1]
B. df.iloc[-1,:]
C. df.loc[-1,:]
D. df.loc[:,-1]
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

在 Pandas 中,`DataFrame` 对象的列提取可以通过位置索引 `iloc` 或标签索引 `loc` 来完成。针对你的问题,目标是提取 `DataFrame` 的最后一列。让我们分析每个选项:

- **A: `df.iloc[:,-1]`**
- `iloc` 是基于位置的索引。`:` 表示选择所有行,`-1` 表示选择最后一列。因此,这个选项可以正确地提取最后一列。
- **正确选项**。

- **B: `df.iloc[-1,:]`**
- `iloc` 基于位置索引,这里 `-1` 表示最后一行,`: ` 表示所有列。因此,这个选项会返回最后一行,而不是最后一列。

- **C: `df.loc[-1,:]`**
- `loc` 是基于标签的索引。如果 `DataFrame` 的索引不是数值索引,`-1` 可能不是有效的标签,即使是数值索引,`-1` 也通常不是合法的行标签。因此,这个选项用于获取行数据,而不是列。

- **D: `df.loc[:,-1]`**
- `loc` 基于标签索引,`: ` 通常表示所有行,但 `-1` 在列位置上使用无效,因为 `loc` 需要列的明确标签,而非位置索引。

因此,正确答案是 **A: `df.iloc[:,-1]`**,它能够通过位置索引正确提取 `DataFrame` 的最后一列。

以下是一个简单的示例:

```python
import pandas as pd

# 创建一个示例 DataFrame
data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)

# 提取最后一列
last_column = df.iloc[:, -1]
print(last_column)
```

该代码将输出:

```
0 7
1 8
2 9
Name: C, dtype: int64
```

这确认了 `df.iloc[:,-1]` 的功能,即提取最后一列。