[英]Why am I getting this valueerror for one set of ride data even though it works perfectly for a different ride
Hi there I am getting this:嗨,我得到了这个:
ValueError: cannot reindex a non-unique index with a method or limit
when running these lines:运行这些行时:
df_nemo_all = pd.read_csv(
"https://cdn.touringplans.com/datasets/finding_nemo_subs.csv", usecols=['date','datetime','SPOSTMIN'],
parse_dates=['date', 'datetime']
)
df_nemo_all['ride'] = 'space'
df_nemo_all['open'] = ~((df_space_all['SPOSTMIN'] == -999))
df_nemo = df_nemo_all.set_index('datetime').sort_index()
df_nemo = df_nemo.loc['2017-01-01 06:00':'2017-02-01 00:00']
df_nemo = df_nemo.resample('15Min').ffill()
when it works for a different ride such as:当它适用于不同的骑行时,例如:
df_space_all = pd.read_csv(
"https://cdn.touringplans.com/datasets/space_mountain_dlr.csv", usecols=['date','datetime','SPOSTMIN'],
parse_dates=['date', 'datetime']
)
df_space_all['ride'] = 'space'
df_space_all['open'] = ~((df_space_all['SPOSTMIN'] == -999))
df_space = df_space_all.set_index('datetime').sort_index()
df_space = df_space.loc['2017-01-01 06:00':'2017-02-01 00:00']
df_space = df_space.resample('15Min').ffill()
You do have duplicates in your index您的索引中确实有重复项
df_space_all = pd.read_csv(
"https://cdn.touringplans.com/datasets/space_mountain_dlr.csv", usecols=['date','datetime','SPOSTMIN'],
parse_dates=['date', 'datetime']
)
df_space_all['ride'] = 'space'
df_space_all['open'] = ~((df_space_all['SPOSTMIN'] == -999))
df_space = df_space_all.set_index('datetime').sort_index()
df_space = df_space.loc['2017-01-01 06:00':'2017-02-01 00:00']
df_space = df_space.resample('15Min').ffill()
df_nemo_all = pd.read_csv(
"https://cdn.touringplans.com/datasets/finding_nemo_subs.csv", usecols=['date','datetime','SPOSTMIN'],
parse_dates=['date', 'datetime']
)
df_nemo_all['ride'] = 'space'
df_nemo_all['open'] = ~((df_space_all['SPOSTMIN'] == -999))
df_nemo = df_nemo_all.set_index('datetime').sort_index()
df_nemo = df_nemo.loc['2017-01-01 06:00':'2017-02-01 00:00']
c = df_nemo.groupby(level=0).transform("count")
c[c["date"]>1].index.tolist()
df_nemo = df_nemo[~df_nemo.index.isin(c[c["date"]>1].index.tolist())].resample('15Min').ffill()
df_nemo
output output
date SPOSTMIN ride open
datetime
2017-01-01 09:00:00 NaT NaN NaN NaN
2017-01-01 09:15:00 2017-01-01 5.0 space True
2017-01-01 09:30:00 2017-01-01 5.0 space True
2017-01-01 09:45:00 2017-01-01 5.0 space True
2017-01-01 10:00:00 2017-01-01 5.0 space True
... ... ... ... ...
2017-01-31 18:45:00 2017-01-31 20.0 space True
2017-01-31 19:00:00 2017-01-31 20.0 space True
2017-01-31 19:15:00 2017-01-31 20.0 space True
2017-01-31 19:30:00 2017-01-31 10.0 space True
2017-01-31 19:45:00 2017-01-31 10.0 space True
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.