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

备考刷题,请到

CDA认证小程序

假设有Series对象ss,其属于分类型变量,如果需要统计该变量的频数分布,可以使用以下哪个方法?
A. ss.value_counts()
B. np.unique()
C. np.freq()
D. pnunique()
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

正确答案是:A: `ss.value_counts()`

### 专业分析:

- **A: `ss.value_counts()`**
- `value_counts()` 是 Pandas 中用于统计Series对象中每个类别出现次数的方法。对于分类型变量,它可以非常方便地给出每个类别的频数分布,结果以降序排列。
- 示例用法:
```python
import pandas as pd

# 创建一个示例Series对象
ss = pd.Series(['a', 'b', 'a', 'c', 'b', 'a'])

# 计算频数分布
frequency_distribution = ss.value_counts()
print(frequency_distribution)
```
- 输出:
```
a 3
b 2
c 1
dtype: int64
```

- **B: `np.unique()`**
- `np.unique()` 是 NumPy 提供的方法,用于找到数组中唯一的元素并返回排序后的数组。如果参数 `return_counts=True`,它会同时返回唯一元素的频数。然而,它并不直接适用于 Pandas 的 Series 对象,需要先将 Series 转换为 NumPy 数组。
- 示例用法:
```python
import numpy as np

# 使用np.unique(),并返回每个元素的频数
unique_elements, counts = np.unique(ss, return_counts=True)
frequency_distribution = dict(zip(unique_elements, counts))
print(frequency_distribution)
```
- 输出:
```
{'a': 3, 'b': 2, 'c': 1}
```

- **C: `np.freq()`**
- 在 NumPy 中没有名为 `freq()` 的方法。因此,选项 C 是不存在的。

- **D: `pnunique()`**
- Pandas 中没有直接的 `pnunique()` 方法。`nunique()` 是 Pandas 中用于计算Series或DataFrame对象中不重复的值的数量的方法,但它不用于获取频数分布。

因此,选项 A 是正确的选择。`ss.value_counts()` 是用于统计分类型变量频数分布的标准方法。