Python 无法返回并插入列(空白)
以下是我迄今为止采取的步骤。我正在尝试获取数据帧的每日PM平均值,其中包含一列值Python 无法返回并插入列(空白),python,pandas,dataframe,Python,Pandas,Dataframe,以下是我迄今为止采取的步骤。我正在尝试获取数据帧的每日PM平均值,其中包含一列值'PM' import pandas as pd import numpy as np df_2018 = pd.read_csv('kath2018.csv') 我的“kath2018.csv”如下所示: df_2018.head() Date Year Month Day Hour PM 0 1/1/18 1:00 2018 1 1 1 131 1 1/
'PM'
import pandas as pd
import numpy as np
df_2018 = pd.read_csv('kath2018.csv')
我的“kath2018.csv”如下所示:
df_2018.head()
Date Year Month Day Hour PM
0 1/1/18 1:00 2018 1 1 1 131
1 1/1/18 2:00 2018 1 1 2 85
2 1/1/18 3:00 2018 1 1 3 74
3 1/1/18 4:00 2018 1 1 4 79
4 1/1/18 5:00 2018 1 1 5 85
我通过使用np.NaN
替换缺少的空值,然后使用pd.interpolate
替换NaN
来清理数据
#data has random -999 and 985 values, replace with NaN
df_2018['PM']=df_2018['PM'].replace(-999, np.NaN)
df_2018['PM']=df_2018['PM'].replace(985, np.NaN)
df_2018['PM'] = df_2018['PM'].interpolate()
然后,为了得到每日平均值(我的数据以每小时的间隔给出),我运行下面的代码,它完全按照它应该做的那样,按天对每小时值进行分组并给出平均值
df_2018['Date'] = pd.to_datetime(df_2018['Date'])
df_2018 = df_2018.groupby(pd.Grouper(freq='D', key='Date')).mean()
然而,数据完全缺失了几天,因为当我现在查看df_2018
时,完全缺失的几天看起来像
我不知道如何返回数据帧,并将PM
列下的空单元格替换为np.NaN
,以便再次执行插值
如果我要“返回”,在运行插值和groupby函数之前,是否有办法首先找出缺失的天数?请将您的数据的一小部分作为可复制的代码,用于测试以及您对所提供数据的预期输出。请参阅和。具体来说,
'kath2018.csv'
的内容未知,因此很难确定问题可能在哪里。@HenryEcker我使用.head()函数添加了一小部分数据。这是否足够?