在Python Pandas 中从日期中提取周数

在Python Pandas 中从日期中提取周数

很多时候,在处理一些包含日期的数据时,我们可能需要从一个特定的日期中提取周数。在Python中,在pandas的帮助下,这可以很容易地完成。

示例 1:

# importing pandas as pd
import pandas as pd 
  
# creating a dictionary containing a date
dict = {'Date':["2015-06-17"]}
  
# converting the dictionary to a dataframe
df = pd.DataFrame.from_dict(dict)
  
# converting the date to the required format
df['Date'] = pd.to_datetime(df['Date'], errors ='coerce')
df.astype('int64').dtypes
  
# extracting the week from the date
weekNumber = df['Date'].dt.week
  
print(weekNumber)

输出:

0    25
Name: Date, dtype: int64

例子2:我们也可以通过在’Date’对象中添加更多的日期,对多个日期做同样的处理。

# importing pandas as pd
import pandas as pd 
  
# creating a dictionary containing a date
dict = {'Date':["2020-06-17", "2020-01-14", 
                "2020-09-20", "2020-08-15"]}
  
# converting the dictionary to a 
# dataframe
df = pd.DataFrame.from_dict(dict)
  
# converting the date to the required 
# format
df['Date'] = pd.to_datetime(df['Date'],
                            errors ='coerce')
df.astype('int64').dtypes
  
# extracting the week from the date
weekNumber = df['Date'].dt.week
  
print(weekNumber)

输出:

在Pandas-Python中从日期中提取周数

例子3:使用date_range()to_series()从多个日期中提取星期数。

  • pandas.data_range()。它生成了从开始日期到结束日期的所有日期

语法:pandas.date_range(start, end, periods, freq, tz, normalize, name, closed)

  • pandas.to_series()。它创建了一个索引和值都等于索引键的系列。

语法:

Index.to_series(self, index, name)
# importing pandas as pd
import pandas as pd 
  
# generating all dates in given range
# with increment by days
allDates = pd.date_range('2020-06-27', '2020-08-03', freq ='W')
  
# converting dates to series
series = allDates.to_series()
  
series.dt.week

输出:

在Pandas-Python中从日期中提取周数

例子4:在这个例子中,我们将使用pandas.Series()来生成日期,并使用不同的方式将系列转换为数据框架。

pandas.Series():用于创建一个带有轴标签的一维ndarray。
语法:

pandas.Series(data, index, dtype, name, copy, fastpath)
# importing pandas as pd
import pandas as pd 
  
# generating the series
dates = pd.Series(pd.date_range('2020-2-10',
                                periods = 5,
                                freq ='M'))
  
# converting to dataframe
df = pd.DataFrame({'date_given': dates})
  
# extracting the week number
df['week_number'] = df['date_given'].dt.week
  
df

输出:

在Pandas-Python中从日期中提取周数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程