在做出侵权结论之前,需要对空气质量测量值进行重新采样。通过亚马逊的Athena从openaq获得历史数据后,我现在坐在一个大文件(339Mb)的前面,我想按组重新采样。所以我的代码本质上是这样的:
import dask.dataframe as dd
df = dd.read_csv('chile.csv', encoding='latin-1')
gdf = df.groupby(['city','location','parameter']).apply(parseval)
其中parseval是重新采样并计算不良实例的函数:
def parseval(data):
whoma = {'pm25': 25, 'pm10': 50, 'so2': 100,
'o3':100, 'no2': 200, 'co': 100}
data = data.resample('12h')
data['bad'] = [1 if drow['value']>whoma[drow['parameter']] else 0
for _,drow in data.iterrows()]
return data.bad.mean()
但是,此操作失败并显示错误
TypeError(“仅对DatetimeIndex,TimedeltaIndex或PeriodIndex有效,但获得了'Int64Index'的实例,”)
我想念什么? 我的数据如下:
“日期”,“城市”,“位置”,“参数”,“值” “ 2015-09-23T10:00:00-03:00”,“Hualpén”,“ JUNJI”,“ pm10”,“ 31.44” “ 2015-09-23T10:00:00-03:00”,“ Talcahuano”,“ Indura”,“ co”,“ 2521.0” “ 2015-09-23T10:00:00-03:00”,“ Tocopilla”,“ Bomberos”,“ pm25”,“ 23.53” “ 2015-09-23T09:00:00-03:00”,“卡拉马”,“EstaciónCentro”,“ pm25”,“ 11.64” “ 2015-09-23T13:00:00-03:00”,“ Tocopilla”,“ Escuela E-10”,“ pm25”,“ 13.12”