大Pandas的射程进入

2024-03-29 12:59:37 发布

您现在位置:Python中文网/ 问答频道 /正文

pd.period_range(start='2017-01-01', end='2017-01-01', freq='Q')给了我以下信息: PeriodIndex(['2017Q1'], dtype='period[Q-DEC]', freq='Q-DEC')

我想访问“2017Q1”,将其放入数据框中的另一列。你知道吗

我有一个带有日期的日期栏,例如2017年1月1日。在另一列中,我想把由句点范围计算的字符串放在这里。这似乎是用财政季度更新专栏的有效方法。我似乎无法访问它。它是不可下标的,即使我把它赋给一个变量,我也不能得到它。只是想知道我错过了什么。你知道吗


Tags: 数据字符串信息rangestartdecperiodend
1条回答
网友
1楼 · 发布于 2024-03-29 12:59:37

^{}

  • 你差点就到了。它只需要被分配到一列
import numpy as np
from datetime import timedelta, datetime
import pandas as pd


# list of dates - test data
first_date = datetime(2017, 1, 1)
last_date = datetime(2019, 9, 20)
x = 4
list_of_dates = [date for date in np.arange(first_date, last_date, timedelta(days=x)).astype(datetime)]


# create the dataframe
df = pd.DataFrame({'dates': list_of_dates})

     dates
2017-01-01
2017-01-05
2017-01-09
2017-01-13
2017-01-17

df['Quarters'] = pd.PeriodIndex(df.dates, freq='Q-DEC')

输出:

print(df.head())

     dates Quarters
2017-01-01   2017Q1
2017-01-05   2017Q1
2017-01-09   2017Q1
2017-01-13   2017Q1
2017-01-17   2017Q1

print(df.tail())

     dates Quarters
2019-08-31   2019Q3
2019-09-04   2019Q3
2019-09-08   2019Q3
2019-09-12   2019Q3
2019-09-16   2019Q3

相关问题 更多 >