本文主要是介绍Pandas DataFrame 数据转换处理和多条件查询,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
工作中需要处理一个比较大的数据,且当中需要分析的日期类型字段为字符串型,需要进行转换,获得一个新的字段用于时间统计。我们应用 datetime.datetime.strptime
函数进行转换。
数据读取与时间列补充代码如下:
import pandas as pd
import datetimedf = pd.read_csv('SCADA_HISTORY.csv')
# 给DataFrame增加一列标记时间
df['KM_DateTime'] = [datetime.datetime.strptime(datestr, '%d/%m/%Y %H:%M:%S') for datestr in df['KM_MDate']]
多条件查询数据集
选取数据集中 CODE
列中为 123456
,KM_DateTime
列大于等于 2022-07-01
的行。
filtered_data = df[(df['CODE'] == '123456') & (df['KM_DateTime'] >= datetime.datetime(2022, 7, 1))]
result = filtered_data.copy() # 复制供后续处理
查询某一天的数据
基于上述结果,查询某一天的数据并排序输出。
import matplotlib.pyplot as plt
data = result[(result['KM_DateTime'] >= datetime.datetime(2022, 8, 1)) & (result['KM_DateTime'] < datetime.datetime(2022, 8, 2)) ]\.sort_values(by='KM_DateTime')
plt.figure(figsize=(20, 10))
plt.plot(data['KM_DateTime'], data['KM_MValue'])
plt.grid(axis='both', color='gray', linestyle='--', alpha=0.5)
plt.show()
这篇关于Pandas DataFrame 数据转换处理和多条件查询的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!