如何找到平均速度?
How to find the average speed?
我想计算每个ID的平均速度,我用了这个代码
df_Speed=df2.groupby('ID').agg(Total_Speed=('speed Km/h', 'sum'),Total_steps=('ID', 'count')).reset_index()
df_Speed['Avg_Speed']=df_Speed['Total_Speed']/df_Speed['Total_steps']
df_Speed.head()
但我得到 inf 作为速度!
ID Total_Speed Total_schritte Avg_Speed
1817603 2199.422386 149 14.761224
1817615 inf 1178 inf
1817679 inf 452 inf
1817888 5436.540730 271 20.061036
我怎样才能得到速度而不是这个 inf
您正在阅读数据,它以某种方式创造了无穷大。如您所知,无穷大除以某个常数仍然是无穷大。
要解决此问题,您可能需要调整数据,或用平均值填充无穷大。
import numpy as np
# Replace inf with nan
df['Total_Speed'].replace([np.inf, -np.inf], np.nan, inplace=True)
# Replace nan with mean
df['Total_Speed'].fillna(df['Total_Speed'].mean())
来源:Dropping infinite values from dataframes in pandas?
我想计算每个ID的平均速度,我用了这个代码
df_Speed=df2.groupby('ID').agg(Total_Speed=('speed Km/h', 'sum'),Total_steps=('ID', 'count')).reset_index()
df_Speed['Avg_Speed']=df_Speed['Total_Speed']/df_Speed['Total_steps']
df_Speed.head()
但我得到 inf 作为速度!
ID Total_Speed Total_schritte Avg_Speed
1817603 2199.422386 149 14.761224
1817615 inf 1178 inf
1817679 inf 452 inf
1817888 5436.540730 271 20.061036
我怎样才能得到速度而不是这个 inf
您正在阅读数据,它以某种方式创造了无穷大。如您所知,无穷大除以某个常数仍然是无穷大。
要解决此问题,您可能需要调整数据,或用平均值填充无穷大。
import numpy as np
# Replace inf with nan
df['Total_Speed'].replace([np.inf, -np.inf], np.nan, inplace=True)
# Replace nan with mean
df['Total_Speed'].fillna(df['Total_Speed'].mean())
来源:Dropping infinite values from dataframes in pandas?