pd.date_ranges生成时间序列
- time格式:年月日分隔符号可以是”-“,”/”,空格这三种格式(年月日、日月年、月日年都可以);时分秒只能用”:”分隔,顺序只能是时分秒。
- start:起始时间(time)
- end:终止时间(time)
- periods:期数(int),使用时只能出现start或者end,两者不能同时出现
- freq:频率(numY,num年;numM,num月;numD,num日),详细参数见下表
频率别名描述B工作日频率C自定义工作日频率D日历日频率W每周频率M每月最后一个日历日SM每半个月最后一个日历日(15日和月末)BM每月最后一个工作日CBM自定义每月最后一个工作日MS每月第一个日历日SMS每半月第一个日历日(第1和第15)BMS每月第一个工作日CBMS自定义每月第一个工作日Q每季度最后一个月的最后一个日历日BQ每季度最后一个月的最后一个工作日QS每季度最后一个月的第一个日历日BQS每季度最后一个月的第一个工作日A, Y每年的最后一个日历日BA, BY每年的最后一个工作日AS, YS每年的第一个日历日BAS, BYS每年的第一个工作日BH工作日按”时”计算频率H每小时频率T, min每分钟频率S每秒频率L, ms毫秒频率U, us微秒频率N纳秒频率
import pandas as pd
import numpy as np
df = pd.DataFrame( data=np.random.randint(1,20,10),
index=pd.date_range(start="20/01/2021",periods=10,freq="M"),)
print(df)
0
2021-01-31 1
2021-02-28 6
2021-03-31 12
2021-04-30 5
2021-05-31 7
2021-06-30 4
2021-07-31 9
2021-08-31 7
2021-09-30 18
2021-10-31 10
0
count 10.00000
mean 7.90000
std 4.72464
min 1.00000
25% 5.25000
50% 7.00000
75% 9.75000
max 18.00000
- 创建时添加索引
pd.DataFrame(...,index=[],...)
- df.set_index使用现有列设置索引
- keys:列名,多个列用[name1,name2]
- drop:设置升序(True)、降序(False)
- inplace:替换原变量(True),不替换(False)
df.set_index(["X"],inplace=True)
df.set_index(["X","Y"],inplace=True)
- df.reset_index可以还原索引
df.reset_index("X")
df.truncate过滤数据
- before:过滤之前的数据(time)
- after:过滤之后的数据(time)
- axis:列(columns),行(index)
df.truncate(before="2021-5",after="2021-9")
0
2021-05-31 7
2021-06-30 4
2021-07-31 9
2021-08-31 7
df.loc索引过滤
df.loc["2021-5":]
0
2021-05-31 7
2021-06-30 4
2021-07-31 9
2021-08-31 7
2021-09-30 18
2021-10-31 10
4.1 查询是否有重复值
duplicated()方法判断
df.duplicated()
df.columns_name.duplicated()
df.duplicated(subset = ['n1','n2'])
groupby().count()
df.groupby('columns').count()>1
4.2 去除重复值
drop_duplicats参数说明:
- 参数subset:用来指定特定的列,默认所有列
- 参数keep:first和last表示是选择最前一项还是最后一项保留,默认first
- 参数inplace:是直接在原来数据上修改还是保留一个副本,默认为False
df.drop_duplicats(subset=['name1','name2'],keep='last',inplace=True)
按照index索引去重
df.index.duplicated(keep='last')
5.1 缺失值查询
df.info查询各列的信息
`python
df.info()
Int64Index: 10 entries, 19 to 14
Data columns (total 2 columns):
Original: https://blog.csdn.net/qq_44285092/article/details/117638171
Author: 而又何羡乎
Title: Pandas时间序列处理
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/756344/
转载文章受原作者版权保护。转载请注明原作者出处!