设置为数字的值变为nan

时间:2018-05-11 23:38:29

标签: python pandas dataframe nan setting

提前感谢您的帮助。当我将一个数据帧中的列设置为与另一个相同时,它总是以NaN形式出现。实际上,在写这篇文章的过程中,我通过在我的临时数据帧的末尾放置.tolist()来解决问题。但我仍然想知道为什么会这样。

df_engagement_attacker=df_final.loc[\
         (df_final['TICK_NUMBER']>engage_range[0])&\
         (df_final['TICK_NUMBER']<engage_range[1])&\
         (df_final['userid']==attackerid),:].copy()
df_engagement_loser=df_final.loc[\
         (df_final['TICK_NUMBER']>engage_range[0])&\
         (df_final['TICK_NUMBER']<engage_range[1])&\
         (df_final['userid']==deadid),:].copy()

df_loser_hurt=df_PH.loc[\
         (df_PH['TICK_NUMBER']>engage_range[0])&\
         (df_PH['TICK_NUMBER']<engage_range[1])&\
         (df_PH['userid']==deadid)&(df_PH['attacker']==attackerid),:].copy()

temp=pd.merge(df_engagement_loser,df_engagement_attacker,on='TICK_NUMBER',how='left')


temp['delta_x']=(temp['xpos_x']-temp['xpos_y'])
temp['delta_y']=(temp['ypos_x']-temp['ypos_y'])
temp['delta_z']=(temp['zpos_x']-temp['zpos_y'])
temp['y_over_x']=temp['delta_y']/temp['delta_x']
temp['arctanboy']=temp['y_over_x'].apply(lambda x: np.arctan(x))
df_engagement_loser['yaw_appearance']=temp['arctanboy'] 
#NOTE, FIXED BY ADDING .tolist() TO LINE ABOVE...

temp['arctanboy']有实际数字,但df_engagement_loser['yaw_appearance']充满了NAN。它们的长度相同。专栏的偏航外观&#39;在该行之前未定义。我已经尝试将列设置为全零

0 个答案:

没有答案