pandas如何算某一列的同比
时间: 2023-10-17 15:21:33 浏览: 135
python学习教程之Numpy和Pandas的使用
在 pandas 中,可以使用 `pct_change()` 方法来计算同比增长率。具体步骤如下:
1. 首先,将时间列设置为索引。如果时间列不是 `datetime` 类型,需要先将其转换为 `datetime` 类型,然后再设置为索引。假设时间列为 `date`,可以使用以下代码将其转换为 `datetime` 类型并设置为索引:
```python
df['date'] = pd.to_datetime(df['date'])
df.set_index('date', inplace=True)
```
2. 然后,使用 `pct_change()` 方法计算同比增长率。假设需要计算列名为 `col` 的同比增长率,可以使用以下代码:
```python
df['col_yoy'] = df['col'].pct_change(periods=12)
```
其中,`periods=12` 表示计算同比增长率时需要往前推 12 个月。
完整的代码示例:
```python
import pandas as pd
# 读取数据
df = pd.read_csv('data.csv')
# 将时间列设置为索引
df['date'] = pd.to_datetime(df['date'])
df.set_index('date', inplace=True)
# 计算同比增长率
df['col_yoy'] = df['col'].pct_change(periods=12)
```
阅读全文